解析文本文件,以便将每一行存储为数组值

时间:2014-10-19 11:31:56

标签: java arrays list parsing loops

基本上,我想逐行解析一个Text文件,以便每一行都包含在它自己的数组值中。

E.g。

 Hi There,
 My Name's Aiden,
 Not Really.

 Array[0] = "Hi There"
 Array[1] = "My Name's Aiden"
 Array[2] = "Not Really"

但我读过的所有例子都让我感到困惑,并让我感到沮丧。也许这就是我接近它的方式。

我不知道如何去做,正确方向的一点是最令人满意的。

1 个答案:

答案 0 :(得分:2)

我的建议是使用List<String>代替String[],因为数组具有固定大小,并且在读取之前该大小未知。之后,人们可以制作一个阵列,但没有真正的目的。

对于阅读,必须知道文件的编码。

Path path = Paths.get("C:/Users/Me/list.txt");
//Charset encoding = StandardCharsets.UTF_8;
Charset encoding = Charset.defaultCharset();
List<String> lines = Files.readAllLines(path, encoding);

for (String line : lines) {
    ...
}

for (int i = 0; i < lines.size(); ++i) {
     String line = lines.get(i);
     lines.set(i, "-- " + line;
}