file的简单使用
使用 new File() 闯进新的文件
public class FileDomo1 {
public static void main(String[] args) throws IOException {
File f1 = new File("G:\\hhh.txt");
Boolean flag = f1.createNewFile();//创建文件hhh.txt
System.out.println(flag ? "创建成功" : "创建失败");
File f2 = new File("G:\\hhh");
f2.mkdir();//创建文件夹,文件夹名称hhh,
File f3 = new File(f2, "a.txt");
f3.createNewFile();//在hhh文件夹下创建a.txt文档
File f4 = new File("G:\\hhh", "b.txt");
f4.createNewFile();//在hhh文件夹下创建b.txt文档
}
}
//File的具体方法要认真阅读ApI文档
renameTo(),将文件移动到另一个路径,并重命名
public class FileDemo2 {
public static void main(String[] args) throws IOException {
File file = new File("G:\\XXX\\作业\\第三章第五节异常处理.zip");
File file1 = new File("G:\\newname.zip");
file.renameTo(file1);
//G:\XXX\作业\第三章第五节异常处理.zip移动到G:\,并重命名为newname.zip
}
}
使用 File 下的 listFIles( ) 将目录转换成一个File数组,进行文件遍历
package file.filetest;
import java.io.File;
public class FileDemo3 {
public static void main(String[] args) {
File file = new File("G:\\");
File file1[]=file.listFiles();//使用listFIles将目录转换成一个File数组
listFiles(file1);//传入静态方法
}
public static void listFiles(File[] files){//
if (files!=null&&files.length>0){//判断传入的数组是否为空
for (File file:files){//foreach循环
if(file.isFile()){//判断是否是文件,
if(file.getName().endsWith(".txt")){//判断文件的名称是否以.txt结尾
System.out.println("找到了一个txt文件路径是:"+file.getPath());
//打印找到的txt文件
}
}else {//如果不是文件,说明是一个文件夹,将文件夹中的File转换成数组,递归调用
//为了把所有的文件夹遍历一遍
listFiles(file.listFiles());
}
}
}
}
}
过滤器遍历文件夹
package file.filetest;
import java.io.File;
import java.io.FileFilter;
public class FileDemo4 {
public static void main(String[] args) {
File file = new File("G:\\");
listFiles(file);//传入静态方法
}
public static void listFiles(File file) {//
File file1[] = file.listFiles(new FileFilter() {//创建过滤器
@Override
public boolean accept(File pathname) {
if (pathname.getPath().endsWith(".zip") || pathname.isDirectory())
return true;
return false;
}
});
if(file1!=null&&file1.length>0)
for (File f:file1
) {
if(f.isDirectory()){
listFiles(f);
}else {
System.out.println("找到了一个zip压缩包"+f.getPath());
}
}
}
}