如何拆分文本文件?
假设一个文本文件有这样的行:
杰基尔 23.3 33.3 43.2
卡其色 32.5 54.3 43.2
.....
到目前为止,我的代码是这样的:
while(scan.hasNext())
{
String line = scan.nextLine();
String[] words = .split(" ");
for(int i = 1; i < words.length - 1; i++)
System.out.println(words[i]);
编辑
现在这已经打印出来了,我的目标是将所有数字加在一起然后创建一个平均值,我坚持在这里需要做的事情
编辑整个代码:
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
import java.text.DecimalFormat;
public class TemperaturesWeek2
{
public static void main( String [] args ) throws IOException
{
int count=0;
double averageTemp;
int averageAbove;
double highestAverage;
File inputFile = new File (
"C:/Users/Phillip/Documents/Temp/temperatures.txt .txt");
Scanner scan = new Scanner(inputFile);
while(scan.hasNext()) {
String words = scan.next();
double num1 = scan.nextDouble();
double num2 = scan.nextDouble();
double num3 = scan.nextDouble();
double num4 = scan.nextDouble();
double num5 = scan.nextDouble();
double num6 = scan.nextDouble();
double num7 = scan.nextDouble();
double average = (num1 + num2 + num3+ num4+ num5+ num6+ num7) / 7;
System.out.println(words);
System.out.println("average is : " + average);
}
}
}
}
最佳答案
试试这个
while(scan.hasNext()) {
String line = scan.nextLine();
String[] words = .split(" ");
double num1 = Double.parseDouble(words[1]);
double num2 = Double.parseDouble(words[2]);
double num3 = Double.parseDouble(words[3]);
double average = (num1 + num1 + num3) / 3;
System.out.println(line);
System.out.println("average is : " + average);
}
编辑:使用 nextDouble()
while(scan.hasNext()) {
String words = acan.next();
double num1 = scan.nextDouble();
double num2 = scan.nextDouble();
double num3 = scan.nextDouble();
double average = (num1 + num1 + num3) / 3;
System.out.println(word);
System.out.println("average is : " + average);
scan.nextLine();
// add another scan.nextLine() if you have line spaces between your lines
scan.nextLine() // only if necessary
}
关于java - 从文本文件中读取和拆分整数以加在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19942708/