一.所有IO操作在java.io包内,实际就是五个类一个接口:
五个类: File ,InputStream,OutputStream,Reader,Writer; 一个接口:Serializable。File-是文件操作类(唯一一个与文件本身的类),首先要操作类,要实例化File类对象
File 类的构造方法:public File(String pathname);-括号里是文件的路径:如:D://java;
1.获得文件基本信息的方法:
-取得文件的名字:public String getName();
-取得文件的大小:public long length();
-判断路径是否是文件:public boolean isFile();
-判断路径是否是文件夹:public boolean ifDirectory();
-判断是否是隐藏文件:public boolean isHidden();
-文件的最后一次修改日期:public boolean lastModified();
-为文件重命名:public boolean renameTo(File dest);
package ioTest;
import java.io.File;
import java.io.IOException;
public class Test4 {
public static void main(String[] args) throws IOException {
File file=new File("D:/work/hello.txt");
if(file.exists()) {
System.out.println(file.getName());
System.out.println(file.length());
System.out.println(file.isFile());
System.out.println(file.isDirectory());
System.out.println(file.isHidden());
System.out.println(file.lastModified());
//重命名:
File newFile=new File("D:/work/无敌.txt");
file.renameTo(newFile);
System.out.println(newFile.getName());
}else {
file.createNewFile();
}
}
}
2.文件操作:
-创建文件:public boolean createNewFile() throw Exception;
-删除文件:public boolean delete();
-判断路径是否存在:public boolean exists();
-找到指定文件的父路径:public File getParentFile();
-创建目录:public boolean mkdirs();
3.列出目录内容:public File[] listFiles();
package ioTest;
import java.io.File;
public class Test1 {
public static void main(String[] args) throws Exception {
File file=new File("D:"+File.separator+"迅雷9");
print(file);
}
public static void print(File file) {
if(file.isDirectory()) {
File result []=file.listFiles();
if(result!=null) {
for(int x=0;x<result.length;x++) {
print(result[x]);
}
}
}System.out.println(file);
}
}
4.查找文件是否在指定的目录中
package ioTest;
import java.io.File;
public class Test1 {
public static void main(String[] args) throws Exception {
File file=new File("D:"+File.separator+"迅雷9");
print(file);
searchFiles(new File("D:/workspace"),"IIIegalArgumentException.java");
}
public static void searchFiles(File path,String name) {
if(path.exists()) {
File[] files=path.listFiles();
for(int i=0;i<files.length;i++) {
File subFile=files[i];
if(subFile.isFile()) {
String fileName=subFile.getName();
if(fileName.equals(name)) {
System.out.println("搜索到文件:"+subFile.getAbsolutePath());
System.exit(1);
}else {
System.out.println(subFile.getAbsolutePath());
}
}else {
searchFiles(subFile, name);
}
}
}
}
}