将响应写入文件Java

编码疯狂

我编写了一个神奇的8球程序,具有20种不同的可能响应。每次随机选择一个响应时,我都会尝试将该响应写入文件中。但是,在main方法的do-while循环中,行“ writeFile(answer);” 不起作用,因为“答案”超出范围。我在尝试修复它时遇到了麻烦。

import java.io.*;
import java.util.*;

public class App {

public static void main(String[] args) {

    String terminate = "Q";
    String Question = "";
    System.out.println("I am the all-knowing Magic 8 Ball!");
    String something = "This is an easter egg!";

    do {
        Scanner scnr = new Scanner(System.in);
        System.out.println("");
        System.out.println("Ask your question here or enter 'Q' to quit:");
        Question = scnr.nextLine();
        continueGame(Question);
        writeFile(answer);
    } while (!(terminate.equals(Question)));
   }

public static void continueGame(String Question) {

    char terminate = 'Q';
    char condition = Question.charAt(0);

    if (condition == terminate) 
    {
        System.out.println("");
        System.out.println("Thanks for playing!");
        System.exit(0);
    }
    try 
    {
        Random rand = new Random();
        int choice;
        choice = 1 + rand.nextInt(20);
        responseOptions(choice, Question);
    }
    catch (Exception e)
    {
        System.out.println("Error: Invalid");
    }
}

public static String responseOptions(int choice, String answer)
{
    switch (choice)
    {
        case 1: answer = "Response: It is certain"; break;
        case 2: answer = "Response: It is decidely so"; break;
        case 3: answer = "Response: Without a doubt"; break;
        case 4: answer = "Response: Yes, definitely"; break;
        case 5: answer = "Response: You may rely on it"; break;
        case 6: answer = "Response: As I see it, yes"; break;
        case 7: answer = "Response: Most likely"; break;
        case 8: answer = "Response: Outlook good"; break;
        case 9: answer = "Response: Yes"; break;
        case 10: answer = "Response: Signs point to yes"; break;
        case 11: answer = "Response: Reply hazy, try again"; break;
        case 12: answer = "Response: Ask again later"; break;
        case 13: answer = "Response: Better not tell you now"; break;
        case 14: answer = "Response: Cannot predict now"; break;
        case 15: answer = "Response: Concentrate and ask again"; break;
        case 16: answer = "Response: Don't count on it"; break;
        case 17: answer = "Response: My reply is no"; break;
        case 18: answer = "Response: My sources say no"; break;
        case 19: answer = "Response: Outlook not so good"; break;
        case 20: answer = "Response: Very doubtful"; break;
    }
    System.out.println("");
    System.out.println(answer);

    return answer;
}

public static String writeFile(String something) {

    try {
        FileWriter fw = new FileWriter("filename.txt", true);
        fw.write(something);
        fw.close();
    } catch (Exception e) {
        e.printStackTrace();
    }   
    return something;
}
}
安德烈亚斯·多克(Andreas Dolk)

首先,我将略微更改responseOptions方法。它只需要选择参数:

public static String responseOptions(int choice) {
    String answer;
    switch (choice) {
      // ...

然后,我们应该更改continueGame一下:

public static String continueGame(String Question) {
    // ...
        return responseOptions(choice);
    }
    catch (Exception e)
    {
        return"Error: Invalid"
    }
}

最后,主要

// ...
String answer = continueGame(Question);
// ...

因此,基本上,我们将来自responseOptions方法的答案返回给main,以便能够将其传递给print方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将SOAP请求/响应写入日志文件

来自分类Dev

将文件写入Java归档文件(JAR)

来自分类Dev

将netcat的响应写入文本文件

来自分类Dev

如何使用骆驼将Web服务响应写入文件?

来自分类Dev

将请求和响应数据写入 jmeter 中的文件

来自分类常见问题

如何在异步httpclient java 11中将多个异步get请求的响应写入单个文件?

来自分类Dev

将文件上传到服务器,java.net.ProtocolException:读取响应后无法写入请求正文

来自分类Dev

使用ant将“ java -version”写入文件

来自分类Dev

使用Java将文件写入HDFS

来自分类Dev

将Java中的文件写入src目录

来自分类Dev

用Java将整个列表写入文件

来自分类Dev

用Java将InputStream写入文件

来自分类Dev

将Java对象写入类文件

来自分类Dev

将矩阵的HashMap写入文件Java

来自分类Dev

用Java将队列写入属性文件

来自分类Dev

如何用Java将文本写入文件

来自分类Dev

JAVA将新行写入.CSV文件

来自分类Dev

用Java将文本写入文件

来自分类Dev

Java-将文件位置写入属性文件

来自分类Dev

使用Java类将数据写入txt文件文件

来自分类Dev

将数组写入文件

来自分类Dev

将JSON写入文件

来自分类Dev

将值写入文件

来自分类Dev

将> Nul写入文件

来自分类Dev

将元素写入文件

来自分类Dev

将矩阵写入文件

来自分类Dev

将“ <”或“>”写入.txt文件

来自分类Dev

将字节写入文件

来自分类Dev

Scala Play文件上传:无法将views.html.uploadFile.type的实例写入HTTP响应