gpt4 book ai didi

java - 使用 BufferedWriter 从用户获取输入并将其写入文件

转载 作者:行者123 更新时间:2023-12-02 12:00:46 25 4
gpt4 key购买 nike

我刚刚开始使用 Java,如果我问一些非常简单的问题,我很抱歉。我基本上必须让用户连续输入整数,一旦他们输入负数,循环就会退出。到目前为止,我编写的代码似乎无法将从用户获得的输入写入我创建的文件 morescores。当我尝试打开文件或从主方法调用它时,它是空白的。我尝试在 google、youtube 和 stackoverflow 上搜索它,但似乎没有任何效果。我将不胜感激任何我能得到的帮助:)

package bufferedreader;
import java.io.*;
import java.util.Scanner;


public class BufferedReader {

/**
* @param args the command line arguments
* @throws java.io.IOException
*/
public static void main(String[] args) throws IOException {
writeToFile("morescores");
processFile("morescores");
}


public static void writeToFile (String filename) throws IOException {
BufferedWriter outputWriter = new BufferedWriter (new FileWriter ("morescores.txt"));
int score = 1;
while (true) {
Scanner reader = new Scanner(System.in);
System.out.print ("Enter a number: ");
score = reader.nextInt();
if (score < 0) {
break;
} else {
outputWriter.write(score);
outputWriter.newLine();
}
}
outputWriter.flush();
outputWriter.close();
}

public static void processFile2 (String filename) throws IOException {
java.io.BufferedReader inputReader = new java.io.BufferedReader(new InputStreamReader (new FileInputStream ("morescores.txt")));
String line;
while ((line = inputReader.readLine()) != null) {
System.out.println (line);
}
inputReader.close();
}

}

更新:我解决了问题哈哈,原来我试图打印一个整数,而它只能是一个字符串。我实际上有一个后续问题,我还需要找到用户输入的所有数字的平均值。我该怎么做呢?我怎样才能编写代码,以便程序知道用户输入某个值的次数我实际上有一个后续问题,我还需要找到用户输入的所有数字的平均值。我该怎么做呢?如何编写代码让程序知道用户输入了多少次值

最佳答案

在写入文件之前将 int 转换为字符串

outputWriter.write(score);

将是:

outputWriter.write(String.valueOf(score));

如果您想知道为什么必须先转换它,请先查看文档: https://docs.oracle.com/javase/7/docs/api/java/io/Writer.html#write(int)

你会发现它写的不是int而是int代表的字符

关于java - 使用 BufferedWriter 从用户获取输入并将其写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47266366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com