我正在研究一个课程项目,并使用我的教授给我们的代码块,一个,从当前目录中获取所有文件,两个,找到哪些文件是.dat格式。这是代码块:
// Get all files from directory
File curDir = new File(".");
String[] fileNames = curDir.list();
ArrayList<String> data = new ArrayList<String>();
// Find files which may have data. (aka, are in the .dat format)
for (String s:fileNames)
if (s.endsWith(".dat"))
data.add(s);
但是,当我尝试编译和测试我的程序时,我收到此错误消息作为响应:
Prog2.java:11: cannot find symbol
symbol : class File
location: class Prog2
File curDir = new File(".");
^
Prog2.java:11: cannot find symbol
symbol : class File
location: class Prog2
File curDir = new File(".");
^
我确实对File
课程的经验很少,所以这可能完全是我的错,但是这有什么用呢?
答案 0 :(得分:10)
从File
包
java.io.File
类
即
import java.io.File;
Here是java.io.File
和brief explanation of the File
class的文档。
答案 1 :(得分:1)
只需在类定义之前添加以下语句:
import java.io.File;
如果您使用IDE,如Eclipse,JDeveloper,NetBeans等,它可以自动为您添加import
语句。
答案 2 :(得分:1)
我认为Naveen和Poodle正确地需要导入File类
import java.io.File;
这是获取帮助我的.dat文件的另一种方法,只有FYI =)
这是一种很好用的通用文件过滤方法:
String[] fileList;
File mPath = new File("YOUR_DIRECTORY");
FilenameFilter filter = new FilenameFilter() {
@Override
public boolean accept(File dir, String filename) {
return filename.contains(".dat");
// you can add multiple conditions for the filer here
}
};
fileList = mPath.list(filter);
if (fileList == null) {
//handle no files of type .dat
}
正如我在评论中所说,您可以向过滤器添加多个条件以获取特定文件。再说一次,仅供参考。