我正在尝试让这个数组从文本文件中读取数据,而我似乎无法完全理解它的工作原理。我不知道什么是错的。在任何人都可以帮忙之前,我从来没有真正做过这样的事情吗?
package students;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Students
{
public static void main(String args[]) throws IOException
{
Scanner sc = new Scanner(new File("words.txt"));
List<String> lines = new ArrayList<String>();
while (sc.hasNextLine()) {
lines.add(sc.nextLine());
}
String[] arr = lines.toArray(new String[0]);
}
}
答案 0 :(得分:0)
更改此行:
String[] arr = lines.toArray(new String[0]);
到
String[] arr = lines.toArray(new String[lines.size()]);
您一直在设置新的字符串数组以容纳单个项目,而不是将其设置为与列表相同的大小。
答案 1 :(得分:0)
可能是你的words.txt不在正确的文件夹中,无法找到。你打印出一个例外吗?
答案 2 :(得分:0)
它在“words.txt”文件位置接收问题(我在项目位置添加了这个文件并且它有效)。
因此,请将您的文件放在工作目录中,或者在类路径中提供完整路径或将其删除,然后按以下步骤进行检索
URL url = getClass().getResource("words.txt");
File file = new File(url.getPath());