我对java编程很陌生,遇到了很多困难。我想用bufferedreader编写一个程序,从我已经创建的名为"scores.txt"的文件中读取。因此,我有一个名为processFile的方法,假设它设置BufferedReader并在文件中循环,读取每个分数。然后,我需要将分数转换为整数,将它们相加,并显示计算出的平均值。
我不知道如何将它们相加并计算平均值,但我目前正在阅读文件。它一直说它无法对文件进行微调,但我确信我的文档中有一个名为"scores.txt"的文件。
这就是我目前所拥有的。。。非常糟糕。我只是不太擅长这个:(也许有不同的问题?
public static void main(String[] args) throws IOException,
FileNotFoundException {
String file = "scores.txt";
processFile("scores.txt");
//calls method processFile
}
public static void processFile (String file)
throws IOException, FileNotFoundException{
String line;
//lines is declared as a string
BufferedReader inputReader =
new BufferedReader (new InputStreamReader
(new FileInputStream(file)));
while (( line = inputReader.readLine()) != null){
System.out.println(line);
}
inputReader.close();
}
有两个主要选项
-
使用文件的绝对路径(在Windows或*.nix中的斜杠)。这对于"仅用于测试"任务非常方便。
样品Windows-D:/someFolder/scores.txt,*.nix-/someFolder/scores.txt
-
将文件放在项目根目录中,在这种情况下它将可见到类加载器。
将scores.txt放在项目文件夹的根目录中,或者将文件的完整路径放在String file
中。
程序将不知道检查您的"我的文档"文件夹中的scores.txt
如果使用IntelliJ,请在包中创建一个input.txt文件,右键单击input.txt文件并单击copy path
。现在可以使用该路径作为输入参数。
示例:
in = new FileInputStream("C:\Users\mda21185\IdeaProjects\TutorialsPointJava\src\com\tutorialspoint\java\input.txt");
如果你在eclipse中,从本地系统获取绝对路径,然后右键单击文件并单击属性,你将获得路径副本,并将其放在下面,这对我很有用。在maven项目中,将属性文件保存在src/main/resources`中
private static Properties Properties=new Properties();
public Properties simpleload() {
String filepath="C:/Users/shashi_kailash/OneDrive/L3/JAVA/TZA/NewAccount/AccountConnector/AccountConnector-DEfgvf/src/main/resources/sample.properties";
try(FileInputStream fis = new FileInputStream(filepath);) {
//lastModi = propFl.lastModified();
properties.load(fis);
} catch (Exception e) {
System.out.println("Error loading the properties file : sample.properties");
e.printStackTrace();
}
return properties;
}`