簡體   English   中英

如何在 Java 中讀取文本文件並將其拆分?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM