Java中File的相关操作

1、File创建文件

import java.io.File;
import java.io.IOException;
class Test{
    public static void main(String[] args) throws IOException {
    	/*注意要有两个'\',不然在java语言中容易造成被理解为转义字符,
    	在window中就用\\,在Linux中就用一个/,
    	java语言为了方便程序员编码,就用File.separator来代替分隔符,
    	最后java虚拟机再根据电脑的操作系统型号自动添加相应的分隔符。
        */
        File file = new File("D:\\java");
        //在D:\java创建一个hello.txt的文件
        File destFile = new File(file,"hello.txt");
        /*
		若想要在与D:\java的同级目录下创建文件,则代码如下:
		File destFile = new File(file.getParent(),"hello.txt");
		*/
        boolean newFile = destFile.createNewFile();
        if(newFile){
            System.out.println("创建成功!");
        }
    }
}

2、用File来删除指定的文件夹和文件

import java.io.File;
class Test{
    public static void main(String[] args) {
        //随意输入一个路径进行测试
        String path = "d:\\java";
        deleteDirectory(path);
    }
    //删除指定的目录
    public static void deleteDirectory(String path){
        /*
        如果file是文件,直接delete
        如果file是目录,先把它的下一级干掉,然后再干删除自己
         */
        File file = new File(path);
        if(file.isDirectory()){
            File[] all=file.listFiles();
            for(File f:all){
                deleteDirectory(f.getAbsolutePath());
            }
        }
        file.delete();
    }
}

3、用File来遍历指定路径下的所有文件夹和文件,并检查是否有以".jpg"为后缀的文件,如果有就直接输出该文件名:

import java.io.File;
import java.io.IOException;
class Test{
    public static void main(String[] args) {
        //随意输入一个路径进行测试
        search("d:\\java");
    }
    //封装函数
    public static void search(String path){
        File dir=new File(path);
        //把第一层的文件夹及文件的名字字符串写入数组
        File[] subFiles = dir.listFiles();
        if(null!=subFiles){
            for(File subFile:subFiles){
                //如果该路径下对应的是文件夹,那就再递归
                if(subFile.isDirectory()){
                    search(subFile.getAbsolutePath());
                }
                //如果是文件,那就再判断后缀即可
                else if(subFile.isFile() && subFile.getName().endsWith(".jpg")){
                    System.out.println(subFile.getName());
                }
            }
        }
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值