【问题标题】:Create an Array populating it by .txt elements创建一个由 .txt 元素填充的数组
【发布时间】:2011-07-13 18:38:25
【问题描述】:

我想创建一个数组,在从格式如下的 .txt 文件中读取元素时填充它:

item1
item2
item3

所以最终结果必须是这样的数组:

String[] myArray = {item1, item2, item3}

提前致谢。

【问题讨论】:

标签: java arrays file file-io


【解决方案1】:
  1. BufferedReader 包裹在FileReader 周围,这样您就可以轻松读取文件的每一行;
  2. 将行存储在List 中(假设您不知道要阅读多少行);
  3. 使用toArrayList 转换为数组。

简单实现:

public static void main(String[] args) throws IOException {
    List<String> lines = new ArrayList<String>();
    BufferedReader reader = null;
    try {
        reader = new BufferedReader(new FileReader("file.txt"));
        String line = null;
        while ((line = reader.readLine()) != null) {
            lines.add(line);
        }
    } finally {
        reader.close();
    }
    String[] array = lines.toArray();
}

【讨论】:

  • 这正是我所需要的! :)
【解决方案2】:

这闻起来像家庭作业。如果是,您应该重新阅读您的笔记,并告诉我们您的尝试。

就个人而言,我会使用 Scanner(来自 java.util)。

import java.io.*;
import java.util.*;

public class Franky {
    public static void main(String[] args) {
        Scanner sc = new Scanner(new File("myfile.txt"));
        String[] items = new String[3]; // use ArrayList if you don't know how many
        int i = 0;
        while(sc.hasNextLine() && i < items.length) {
            items[i] = sc.nextLine();
            i++;
        }
    }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多