任何人都可以帮我这个吗?我正在尝试使用扫描仪将所有文本文档加载到文件夹中。但是,扫描程序似乎只输出我的文本文件的名称!
import java.io.File;
import java.util.Scanner;
public class FileDemo {
public static void main(String[] args){
final File f1=new File("C:/Users/Admin/Desktop/dataFiles/");
String filename="";
for(final File fileEntry:f1.listFiles()){
filename=fileEntry.getName();
Scanner input=new Scanner(f1+"\\"+filename);
String data = " "; //reset String data when new files are loaded
while(input.hasNext()){
data += input.next();
input.useDelimiter("\t");
}
System.out.println(data);
}
}
}
答案 0 :(得分:3)
使用Scanner
创建String
会使Scanner
读取String
中Scanner
中指定的内容:
构造一个新的
File
,用于生成从指定字符串扫描的值。
您需要将Scanner
传递给Scanner input=new Scanner(fileEntry);
//...
构造函数,如Scanner(String)
所示,以读取文件内容:
{{1}}
答案 1 :(得分:1)
您需要传递文件对象而不是String。
所以你需要替换
Scanner input=new Scanner(f1+"\\"+filename);
与
Scanner input=new Scanner(fileEntry);