Java文件操作

java中操作文件的类是java.io.File类 

下面介绍几种常见的操作方法

1.创建文件夹
使用java类中mkdir()方法或者mkdirs()方法。
其中mkdir()方法只会创建一个文件夹,mkdirs()可以创建多层文件夹

        /*其中mkdir和mkdirs方法的区别(以创建 C:\\Test\\Demo1 为例)
        如果Test父文件夹存在并且该父文件夹下Demo1文件不存在,使用mkdir()才会创建文件夹
        如果该父文件夹下Demo1文件已经存在mkdir()也不会创建文件夹会返回false
        如果Test父文件夹不存在,使用mkdirs()会成功创建文件夹Test父文件夹和子文件夹Demo1*/

@Test
	public  void TestMkdirAndMkdirs(){
		//演示java中创建文件的两种方法
			//1.创建一个File类 其中路径为要创建的文件路径(如果文件已经存在那么就会创建失败)
			//2.调用File类的mkdir或者mkdirs方法,这两种方法的返回值都为boolean类型
				/*其中mkdir和mkdirs方法的区别(以创建 C:\\Test\\Demo1 为例)
				如果Test父文件夹存在并且该父文件夹下Demo1文件不存在,使用mkdir()才会创建文件夹
								如果该父文件夹下Demo1文件已经存在mkdir()也不会创建文件夹会返回false
				如果Test父文件夹不存在,使用mkdirs()会成功创建文件夹Test父文件夹和子文件夹Demo1*/

		File file = new File("D:\\Test\\TestIoMethod1") ;

		if (file.mkdirs()){
			System.out.println("创建成功!");
		}else {
			System.out.println("创建失败!");
		}
	}

 2.列出文件夹的内容

所谓列出文件夹的所有内容(使用File类中的方法list() 或者 listFiles()方法 ) 就是如果A文件夹存在子文件夹B C D。。。就把B C D 。。。列出来 这个方法主要用来遍历某一个文件夹 遍历到该文件是非文件夹的形式 而是一个单纯的文件 说一下list()和listFiles()方法的区别和相同之处 list()的返回值是String[] 该String[]是所有子文件夹/子文件的名称 listFiles() 的返回值是File[] File[]中是所有子文件夹/文件的File对象,这个方法常用来文件的遍历

@Test
	public void TestListAndListFiles(){
		/*
		所谓列出文件夹的所有内容(使用File类中的方法list() 或者 listFiles()方法 )
		就是如果A文件夹存在子文件夹B C D。。。就把B C D 。。。列出来
		这个方法主要用来遍历某一个文件夹 遍历到该文件是非文件夹的形式 而是一个单纯的文件
		说一下list()和listFiles()方法的区别和相同之处
		list()的返回值是String[]
			该String[]是所有子文件夹/子文件的名称
		listFiles() 的返回值是File[]
			File[]中是所有子文件夹/文件的File对象,这个方法常用来文件的遍历
		 */
		File file = new File("D:\\javaCode\\sky-take-out\\sky-server\\src");
		String[] list = file.list();
		System.out.println(Arrays.toString(list));
		System.out.println("-----------------");
		File[] files = file.listFiles();
		for(File newfile : files)
			System.out.println(newfile.getName());
	}

3.删除文件

/* 删除文件要用到File类中的delete()方法 该方法的返回值是一个boolean类型 当成功删除返回true 否则返回false 只要当该File文件夹没有子文件夹时才会被删除成功 否则删除失败 */

@Test
	public void TestDelete(){
		/*
		删除文件要用到File类中的delete()方法
		该方法的返回值是一个boolean类型 当成功删除返回true 否则返回false
		只要当该File文件夹没有子文件夹时才会被删除成功 否则删除失败
		 */
		File file1 = new File("D:\\javaCode\\sky-take-out\\sky-server\\TestIoMethod1");
		File file2 = new File("D:\\javaCode\\sky-take-out\\sky-server\\src");
		System.out.println("file1删除情况"+file1.delete());
		System.out.println("--------------------");
		System.out.println("file2删除情况"+file2.delete());

	}

4.遍历文件(使用File.listFiles()) 
以遍历文件查找某一个名称的文件为例
 

public class Tets01 {
	public static void traverse(File parentFile) {
		if (parentFile.isFile()) {
			if (parentFile.getName().equals("CategoryController.java")) {
				System.out.print(parentFile.getPath());
			} else {
				return;
			}
		} else if (parentFile.isDirectory()) {
			File[] files = parentFile.listFiles();
			if (files != null) {
				for (File file : files) {
					traverse(file);
				}
			}

		}
	}


	public static void main(String[] args) {
		File file = new File("D:\\javaCode\\sky-take-out");
		traverse(file);
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值