【发布时间】:2011-07-13 18:38:25
【问题描述】:
我想创建一个数组,在从格式如下的 .txt 文件中读取元素时填充它:
item1
item2
item3
所以最终结果必须是这样的数组:
String[] myArray = {item1, item2, item3}
提前致谢。
【问题讨论】:
-
看看这个答案stackoverflow.com/questions/4717838/… ...够了吗?
我想创建一个数组,在从格式如下的 .txt 文件中读取元素时填充它:
item1
item2
item3
所以最终结果必须是这样的数组:
String[] myArray = {item1, item2, item3}
提前致谢。
【问题讨论】:
BufferedReader 包裹在FileReader 周围,这样您就可以轻松读取文件的每一行;List 中(假设您不知道要阅读多少行);toArray 将List 转换为数组。简单实现:
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();
}
【讨论】:
这闻起来像家庭作业。如果是,您应该重新阅读您的笔记,并告诉我们您的尝试。
就个人而言,我会使用 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++;
}
}
}
【讨论】: