——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——
一、概述
• File类:表示文件和目录路径名的抽象表示形式。
• File类可以实现文件的创建、删除、重命名、得到路径、创建时间等等,是唯一与文 件本身有关的操作类。
• File类的定义:
• public class File
• extends Object
• implements Serializable, Comparable<File>
代码演示:
package com.joe.file;
import java.io.File;
import java.io.IOException;
/**
* File类的使用
* @author joe
*
*/
public class FileDemo {
public static void main(String[] args) {
//File.separator 表示分隔符
//D:\\lamp
File file1 = new File("D:"+File.separator+"lamp"+File.separator+"lamp.txt");
//路径分隔符
// String s = File.pathSeparator;
//文件是否存在
if(!file1.exists()){
try {
//创建一个新文件
boolean b = file1.createNewFile();
System.out.println("创建文件:"+b);
} catch (IOException e) {
e.printStackTrace();
}
}
//删除文件
//System.out.println(file1.delete());
//得到文件的上一级路径
System.out.println(file1.getParent());
//判断一个路径是否是文件夹
System.out.println("是否是目录:"+file1.isDirectory());
判断一个路径是否是文件
System.out.println("是否是文件:"+file1.isFile());
File file2 = new File("d:\\vince");
//列出文件夹中的所有文件名
String[] fileName = file2.list();
for (String s : fileName) {
System.out.println(s);
}
//列出文件夹中的所有文件,以File数组返回
File[] files = file2.listFiles();
for (File file : files) {
System.out.println(file.getPath()+"---"+file.length());
}
//创建文件夹
File file3 = new File("d:\\xiaobai\\baibai");
file3.mkdirs();
//重命名
File file4 = new File("d:\\xiaobai\\xiaobaibai");
file3.renameTo(file4);
}
}
练习:
package com.joe.file;
import java.io.File;
/**
* 文件搜索 任意给定一个目录,从该目录中(包括子目录)查找出所有后缀txt的文 件,并打印出来
*
* @author joe
*
*/
public class fileDemo {
// 使用递归算法实现文件查找功能
public static void findFile(File file, String extName) {
if (file == null) {
return;
}
// 如果是目录,那么获取该目录下的所有文件的File对象
if (file.isDirectory()) {
File[] fs = file.listFiles();
// 判断fs是否为空文件夹
if (fs != null) {
for (File f : fs) {
// 遍历后使用递归调用
findFile(f, extName);
}
}
}// 当File是一个文件时,那么我们就进行判断扩展名是否为指定的扩展名
else {
// 将文件的路径名全部变为小写
String path = file.getPath().toLowerCase();
// 判断后缀是否为".jpg"
if (path.endsWith(extName)) {
System.out.println(file.getPath());
}
}
}
public static void main(String[] args) {
File file = new File("d:\\vince");
String extName = ".jpg";
findFile(file, extName);
}
}