【发布时间】:2018-01-25 10:42:38
【问题描述】:
您好,我是 Java 新手,使用文件。我有一个名为banking.txt 的文本文件位于C:,但是当我尝试将其内容放入ArrayList 并打印时,它什么也没有打印出来。是我使用的文件路径不正确还是有什么不同?
import java.util.ArrayList;
import java.util.Scanner;
import java.io.*;
public class FileP {
public static void main(String[] args) throws FileNotFoundException {
Scanner read = new Scanner(new File("C:\\banking.txt"));
ArrayList<String> myList = new ArrayList<String>();
while(read.hasNextLine()) {
myList.add(read.nextLine());
}
System.out.println(myList);
}
}
【问题讨论】:
-
“它什么也没有打印出来”:这很难相信。你到底得到了哪个输出?
-
这应该可行。可能是权限问题。有输出吗?
-
相关:Java reading a file into an ArrayList? 虽然没有投票关闭作为重复项,因为您的代码应该可以工作或抛出异常(在列表中没有得到任何内容应该意味着文件为空)。
-
您可以检查您的文件 1) 是否存在以及 2) 是否可以读取。检查这个例子:ideone.com/7NckQf
-
我可以通过在 Scanner 构造函数中尝试读取相同的系统文件(在 Win 7 上)尝试
File和FileReader来重现这一点 - 一个打印一个空的 ArrayList,另一个打印文件内容。两者之间可能存在一些权限差异,但我无法告诉您确切的问题是什么。
标签: java