I/O流之File
I/O流
File
File 文件对象:
File 可以表示一个文件夹
File 可以表示为一个文件
但是File不能操作文件内容
File指定的文件可能存在也可能不存在
绝对路径:
能够在整个电脑里面定位到一个文件或文件夹的路径,称之为绝对路径。
Windows使用盘符开头的路径,是绝对路径。
其他所有的操作系统以 / 开头的表示绝对路径。
win:
D:\test\images\mm.jpg
D:/test/images/mm.jpg
liunx:
/test/images/mm.jpg
相对路径(推荐)
通常是指相对于某个文件夹下的位置定位。比如说相对于程序运行的文件夹来说,当前文件夹使用一个 . 表示;上级文件夹使用 .. 表示。
只能相对于某个文件夹来确定位置,不能在整个电脑里面定位路径。
所有操作系统都使用 . 表示当前目录;.. 表示上级目录。
images/mm.jpg
文件常用API介绍-1
import java.io.File;
/**
* File 对象方法使用实例
*/
public class FileTest {
public static void main(String[] args) {
// File.separator 可以自动根据使用的平台切换文件路径分隔符
// 创建一个File关联一个需要操作的文件(可能存在,也可能不存在,可能是文件,也可能是文件夹)
File file = new File("C:" + File.separator + "test" + File.separator
+ "start_bg2.png");
// file.exists()//判断File对象对应的文件(文件夹)是否存在,存在返回true
System.out.println(file.exists());
System.out.println("是否是文件夹:" + file.isDirectory());//directory意为目录、执导的
System.out.println("是否是文件:" + file.isFile());
System.out.println("是否是隐藏文件:" + file.isHidden());
System.out.println("获得文件名:" + file.getName());
System.out.println("获得文件路径:" + file.getPath());
System.out.println("获得文件父路径:" + file.getParent());
System.out.println("获得文件最后修改时间:" + file.lastModified());
System.out.println("获得文件大小:" + file.length());
}
}
文件常用API介绍-2
import java.io.File;
import java.io.IOException;
/**
* 文件操作
*
*/
public class FileTest4 {
public static void main(String[] args) throws IOException{
File file = new File("C:/test/dir/demo.txt");
//在指定位置创建文件
boolean flag = file.createNewFile();
System.out.println("--文件创建--"+flag);
System.out.println("-------------------");
//创建一个临时文件
//参数1:临时文件前缀,文件名以什么开头的
//参数2: 临时文件后缀,文件的后缀是什么
//参数3:临时文件存储位置,注意是new对象
File.createTempFile("yayadou-", ".txt", new File("c:/test/dir"));
}
}
文件夹常用API介绍-3
importjava.io.File;
/**
* 文件夹操作
*/
public class FileTest3 {
public static void main(String[] args) {
/*
File file = new File("C:/test/dir/a/b/c");
if(!file.exists()){
//boolean flag =file.mkdir();//不会创建父路径,单一文件夹创建,mkdir=mark directory(创建文件夹)
boolean flag = file.mkdirs();//会创建父路径(推荐使用)
System.out.println("创建文件夹:"+flag);
}
*/
File file2 =new File("c:/test/dir/a/b");
//删除File对象对应的对象,如果包含内容(文件或者文件夹将删除失败)
boolean deleteFlag = file2.delete();
System.out.println("删除文件夹:"+deleteFlag);
}
}