[英]How to read a text file in Java and split it?
我在編寫一個程序時需要幫助,它會用 Java 讀一個文件,然后拆分單詞並計算音符的平均值。 所以我在 Java 中有一個名為 dziennik.txt 的文件,在兩行中我有名字、姓氏、筆記數量,然后是學生的筆記。 它看起來像這樣:
馬克斯坦克 3 4 5 6
維羅妮卡·李 2 2 4
所以我需要做的是拆分單詞,這樣程序就會知道第 3 個單詞是一些音符,接下來的是這些音符,它會計算平均值。 現在我有這樣的東西:
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Scanner;
public class FileWrite {
public static void main(String[] args) throws IOException {
StringBuilder dziennik = new StringBuilder();
try (BufferedReader br = Files.newBufferedReader(Paths.get("dziennik.txt"))) {
// read line by line
String line;
while ((line = br.readLine()) != null) {
dziennik.append(line).append("\n");
String[] pair = line.split(" ");
}
} catch (IOException e) {
System.err.format("IOException: %s%n", e);
}
System.out.println(dziennik);
}
}
我對此很陌生,所以請盡可能簡單地向我解釋一下。
類似於spork提到的。 這是獲取每個學生的平均筆記數的方法:
StringBuilder dziennik = new StringBuilder();
double total = 0; // Added line
double counter = 0; // Added line
try (BufferedReader br = Files.newBufferedReader(Paths.get("dziennik.txt"))) {
// read line by line
String line;
while ((line = br.readLine()) != null) {
dziennik.append(line).append("\n");
String[] pair = line.split(" ");
total = total + Double.valueOf(pair[2]); // Added line
counter++; // Added line
}
System.out.println("Average number of notes per student: " + total / counter); // Added line
} catch (IOException e) {
System.err.format("IOException: %s%n", e);
}
System.out.println(dziennik);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.