File 类

文件操作:  仅仅是文件操作!

1,常用的方法

public static void main(String[] args) {
		File file1 = new  File("d:\\FileDemo");//创建file对象,此时并没有文件目录存在
		File file2 = new  File("d:\\FileD\\demo.txt");//创建file对象,此时并没有文件存在
		File file3 = new  File("demo.txt");//创建file对象,此时是相对路径,目标在项目根路径下。
		//创建目录  递归创建目录。       mkdir() 是创建一个目录
		Boolean b1 = file1.mkdirs();
		//删除目录
		Boolean b2 = file1.delete();
		
		//查看目录是否存在
		Boolean b3 = file1.exists();
		
		//判断是不是目录
		Boolean b4 = file1.isDirectory();
		
		//获取目录名称
		String name = file1.getName();
		
		//获取父目录
		File file = file1.getParentFile();
		
		//获得目录绝对路径
		String path = file1.getAbsolutePath();
		
		<pre name="code" class="java"><span style="white-space:pre">		</span>//重命名的时候  前面的路径一定要一样,不然修改不成功。
		File file = new File("D:\\FileDemo\\abc");  
		File file2  =new File("D:\\FileDemo\\bcs");
		Boolean v = file.renameTo(file2);
		
		//设置权限
		File file3 = new File("a.txt");  
		Boolean boolean2 = file3.setReadOnly();

//创建文件 当创建“java/test.txt”这样的文件时,如果java目录不存在,则不能创建,也就是当有目录结构时,父级目录必须存在才可以创建文件try {Boolean boolean1 = file3.createNewFile();} catch (IOException e) {e.printStackTrace();}//判断文件是否存在Boolean boo1 = file3.exists();//获得文件的绝对路径String path1 = file3.getAbsolutePath();//判断是否是文件Boolean boo2 = file3.isFile();//获得父目录File fi = file2.getParentFile();}
 2,方法的应用 

File file2 = new  File("d:\\FileDemo\\demo.txt");//创建file对象,此时并没有文件存在
		
		//应用中可以先获得路径,然后进行操作.
		
		String path = file2.getAbsolutePath();  //获得全路径
		File file = file2.getParentFile();  //得到父目录
		String path2= file+"\\demo2.txt";  //对父目录进行操作,产生新的路径。创建新的文件
		String path3 = file+"\\dir2";   //创建新的目录
		Boolean b1 = new File(path3).mkdirs();  //创建新的目录
		try {
			Boolean b2 = new File(path2).createNewFile();  //创建新的文件
		} catch (IOException e) {
			e.printStackTrace();
		}
		Boolean b2 = new File(path3).delete();  //删除文件,删除目录。
3,遍历获得当前目录下的目录和文件
File file = new File("d:\\FileDemo");
		File[] files = file.listFiles();   //获得当前文件夹下 所有的目录和文件对象。d:\FileDemo\abc,d:\FileDemo\demo.txt
		for(int i=0;i<files.length;i++){
			System.out.println(files[i]);
		}
		
		String[] s = file.list();  //获得当前文件夹下所有文件和文件夹名称  abc,demo.txt
		for(int i=0;i<s.length;i++){
			System.out.println(s[i]);
		}

4,综合应用      实现目录的查询和删除

public class Test {
	
	//循环遍历输出当前文件夹下所有的文件
	public static void printAllFile(File f) {
		if(f.isDirectory()){
			File[] files =f.listFiles();
			for(int i=0;i<files.length;i++){
				if(files[i].isDirectory()){
					printAllFile(files[i]);  //递归
				}else{
					System.out.println(files[i]);
				}
			}
		}
	}
	
	//删除当前文件夹下的所有,包括当前文件夹
	//delete() 方法能删除文件,能删除为空的文件夹 ,不能删除不为空的文件夹
	public static void deleteAll(File f) {
		if(f.isFile()){
			f.delete();
		}else{
			File[] fiels = f.listFiles();
			for(int i=0;i<fiels.length;i++){
				deleteAll(fiels[i]);
			}
			f.delete();   
		}
		System.out.println("删除完成!");
	}
	
	
	public static void main(String[] args) {
		File file = new File("D:\\FileDemo");  //如果文件夹不存在,则不能创建文件!
		//Test.printAllFile(file);
		//Test.deleteAll(file);
	}
	
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值