Java 文件操作(File类)
在Java中,文件操作和流操作经常结合在一起进行,其中,文件操作主要是针对一个文件的增删改查和重命名,不涉及一个文件的内容的更改,关于具体文件内容的操作属于流操作的范畴。这里,先对文件操作进行的一些方法结合代码进行简要的描述,希望对大家有用。
1 示例代码如下:
import java.io.File;
import java.io.IOException;
import java.util.Date;
/*
* java.io.File类
* 1 凡是与输入输出有关的都在java.io中
* 2 File是一个类,可以有构造器创建对象
* 3 File类对象与平台无关
* 4 File中的方法仅涉及如何创建 删除和重命名 设计文件内容的需要由IO流来完成
* 5 File类对象常作为IO流具体类的形参
*
*/
public class TestFile {
public static void main(String[] args) throws IOException {
File file=new File("D:\\test.txt");
System.out.println("getName "+file.getName());//得到文件名字
System.out.println("getPath "+file.getPath());//得到路径
System.out.println("getAbsoluteFile "+file.getAbsoluteFile());//得到绝对路径
System.out.println("getAbsolutePath "+file.getAbsolutePath());//得到绝对路径(常用)
System.out.println("getParent "+file.getParent());//(得到绝对路径的上一级)
//File f=new File("E:\\tt.txt");
//Boolean b=file.renameTo(f);//将文件挪到另一个存储空间或者改名(等号两边两者必须同为文件或者目录)
//System.out.print(file.getAbsolutePath()+" "+b);
System.out.println("exists "+file.exists());
System.out.println("canWrite "+file.canWrite());
System.out.println("canread "+file.canRead());
System.out.println("isFile "+file.isFile());
System.out.println("isDirectory "+file.isDirectory());
System.out.println("lastModified "+new Date(file.lastModified()));//最近一次修改时间
System.out.println("length "+file.length());//文件的字节大小(一个汉语为两个字节)
System.out.println(file.delete());//文件删除
if(!file.exists()) {
boolean b=file.createNewFile();
System.out.println(file.length()+" "+b);
}
File file1=new File("D:\\test");
if(!file1.exists()) {
//makedir:创建文件目录,只有在上层文件存在才能成功
//makedirs:创建目录 如果上层不存在,也可以创建
boolean b=file1.mkdir();
System.out.println("boolean "+b);
}
File file2=new File("D:\\haoya");
//得到目录列表
String[] strs=file2.list();
for(String i:strs) {
System.out.println("----"+i);
}
//得到文件目录
File[] fs=file2.listFiles();
for(File f:fs) {
System.out.println("<<--->>"+f.getName());
}
}
}
2 运行结果: