0224 File文件

1、io

把内存中的数据存储到永久的持续化设备上的动作叫输出操作(写入)

将永久持续化设备上的数据读取到内存中的动作叫输入操作(读)

把这种输入输出的操作叫做io

2.file类

(2-1)静态常量

(1)pathSeparator:获取与系统相关的路径分隔符:windows系统就是“;”,linux系统就是“:”

(2)separator:获取与系统有关的默认名称分隔符:windows系统就是“”,linux系统就是“/”

代码展示

System.out.println(File.separator);
System.out.println(File.pathSeparator);
运行结果为

;

 

(2-2)构造方法

(1)File (String pathname)通过给定的路径名称字符串创建一个新的file类对象

(2)File (String parent, String child)根据parent父级文件夹 和child 子级文件夹 创建一个新的file类对象

(3)File (File parent, String child) 根据parent父级file类对象和child子级文件夹 创建一个新的file类对象

代码展示

File file=new File("F:\io1127\demo01.txt");
System.out.println(file);
File file2=new File("F:\io1127","demo01.txt");
System.out.println(file2);
File file3=new File(new File("F:\io1127"),"demo01.txt");
System.out.println(file3);
运行结果
F:io1127demo01.txt
F:io1127demo01.txt
F:io1127demo01.txt

  

(2-3)file类中的方法

(1)getAbsolutePath ()获取该file类对象的绝对路径字符串,返回值是字符串类型

(2)getName ()获取该file类对象的文件或文件夹名字,返回值是字符串类型

(3)getPath()获取该file类对象的相对路径字符串,返回值是字符串类型

(4)length()获取对象的大小,返回值是long类型

代码展示

	//file中的获取方法
	public static void method01(){
		//描述要操作的文件
		File file=new File("F:\io1127\demo01.txt");
		//File file=new File("srs");//默认是工作空间的的路径
		//获取绝对路径
		System.out.println(file.getAbsolutePath());
		//获取文件或文件夹名
		System.out.println(file.getName());
		//获取路径
		System.out.println(file.getPath());
		//获取文件或文件夹大小
		System.out.println(file.length());//长度单位是字节
	}

  注:如果获取的文件是不存在的,他会默认获取的是工作空间的路径

(2-4)文件的创建和删除

(1)createNewFile () 创建一个文件,返回值是布尔值

(2)delete()删除一个文件,返回值是布尔值

(3)exists()判断该文件是否存在,返回值是布尔值

(4)isDirectory() 测试文件是否是一个文件夹,返回值是布尔值

(5)isFile()测试文件是不是一个标准文件

(6)mkdir()创建指定目录

代码展示创建

	//创建文件
	public static void method02() throws IOException{
		//明确要创建文件的位置
		File file=new File("F:\io1127\demo02.txt");
		//File file=new File("F:\io1127\a");
		//创建文件
		System.out.println(file.createNewFile());
	}

  注:上述中创建的a文件 当在创建时也会默认创建一个a文件,只不过文件的类型没有指定 他就是一个文件

代码展示删除

	//删除文件或文件夹
	public static void method03(){
		//明确要删除文件的位置
		File file=new File("F:\io1127\a");
		//删除文件
		System.out.println(file.delete());
	}

  

代码展示判定

	//判定
	public static void method04(){
		//明确文件的位置
		File file=new File("F:\io1127\demo02.txt");
		//判断是否真是存在
		System.out.println(file.exists());
		//判断是否是文件夹
		System.out.println(file.isDirectory());
		//判断是否是文件
		System.out.println(file.isFile());
	}

  

代码展示创建文件夹

	//创建文件夹
	public static void method05(){
		//明确创建文件夹的位置
		File file=new File("F:\io1127\a\b\c");
		//创建文件夹
		System.out.println(file.mkdirs());
	}

  注:mkdir()方法 只能创建一层文件夹,mkdirs()方法 可以创建多层文件夹

(2-5)listFile()方法

(1)list() 将指定file类对象的多有文件或文件夹名称存到string数组中,只能获取一层

(2)listFile()将指定file类对象中的文件或文件夹对象存到file数组中

代码展示01

	//获取某目录下的文件和文件夹(名字)
	public static void method06(){
		//明确文件夹位置
		File file=new File("F:\io1127");
		//获取
		String[] names=file.list();
		for(String s:names){
			System.out.println(s);
		}
	}

  运行结果:

a
demo01.txt
demo02.txt
work1
work1.txt

代码展示02

	//获取某目录下的文件和文件夹对象
	public static void method07(){
		//明确文件夹位置
		File file=new File("F:\io1127");
		//获取
		File[] files=file.listFiles();
		for(File f:files){
			System.out.println(f);
		}
	}

  运行结果为

F:io1127a
F:io1127demo01.txt
F:io1127demo02.txt
F:io1127work1
F:io1127work1.txt

原文地址:https://www.cnblogs.com/-gongxue/p/14439902.html