看到某开源文件作者将文件运用的出神入化,即决定将源码中的所有用到文件的地方搞搞清楚,在这里做做笔记。
关于Class类的getResouce()和getClassLoade().getResouce()两个方法的疑问:
首先是getResouce(“/”)和getResouce(“”)的区别, 如下图所示:
File.mkdir()和File.mkdirs():
可以看出貌似是英语上的单数负数问题,事实也是如此,前者创建一级目录可以,后者创建一级或多级都行。
具体看:点击打开链接
File.deleteOnExit()和File.delete():
前者顾名思义所有创建的文件都在程序退出的时候自动删除,起到一种缓冲作用,后者直接删。
File.listFiles():
返回的是file文件夹里面所有文件组成的文件数组
import java.io.File;
import java.io.FileFilter;
public class Test {
public static void main(String[] args) {
File file = new File("E:\\");
File[] files = file.listFiles(new FileFilter(){
@Override
public boolean accept(File pathname) {
// 判断文件名是目录 或 .xls 结尾
if (pathname.isDirectory() || pathname.getName().toUpperCase().endsWith(".XLS")) {
return true;
}
return false;
}});
for (File f : files) {
System.out.println(f.getName());
}
}
}
后续更新