繁体   English   中英

从txt文件中读取行并将其相加并取平均值

[英]Read lines from a txt file and add and average them

所以基本上我必须写一个数字类似的txt文件:

1
2
3
4
5
6
7
8
9
10

然后将它们中的每一个相加并将它们彼此相加,得出总计55,然后将它们平均55/10以得到我的答案。

好吧,我可以使用以下命令轻松地将数字写到txt文件中:

PrintWriter outputFile = new PrintWriter("output.txt");

    outputFile.println("1");
    outputFile.println("2");
    outputFile.println("3");
    outputFile.println("4");
    outputFile.println("5");
    outputFile.println("6");
    outputFile.println("7");
    outputFile.println("8");
    outputFile.println("9");
    outputFile.println("10");
    outputFile.close();

但是如何重新读回它们并将它们转换成总和为55的数字? 我的大多数尝试只是将它们全部读回或读入,最后进行怪异的计算,例如

3
5
9
14
20
27
ect.
public static void main(String[]args){
 int total = 0;
 int counter = 0;
 Scanner inFile = null;

 try{
 inFile = new Scanner(new File("fileName.txt"));

 while(inFile.hasNext()){
  total += inFile.nextInt();
  counter++;
 }

}catch(FileNotFoundException e){
 e.printStackTrace();
 }


System.out.println("Average: "+total/counter);
}

您可以使用java.io.BufferedReader读取文件,即

BufferedReader reader = new BufferedReader(new FileReader("/path/to/file.txt"));

看一下BufferedReader API中的readLine()方法。 有关更多信息,请阅读教程

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM