JavaSE之文件操作

package com.wedu.test;

import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
import java.io.IOException;

public class FileDemo {
	public static void main(String[] args) throws IOException {
        System.out.println(File.pathSeparator);//;
        System.out.println(File.separator);//\

        //File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
        File file = new File("E:\\demo\\DateDemo.java");
        System.out.println(file);//E:\demo\DateDemo.java

        //File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
        file = new File("E:\\demo" ,"\\CollectionDemo.java");
        System.out.println(file);//E:\demo\CollectionDemo.java

        //File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
        file = new File(new File("E:\\demo"),"InnerClassDemo.java");
        System.out.println(file);//E:\demo\InnerClassDemo.java

        //获取功能
        //long length() 返回由此抽象路径名表示的文件的长度。
        System.out.println(file.length());//307

        // String getPath() 将此抽象路径名转换为一个路径名字符串。
        System.out.println(file.getPath());//E:\demo\InnerClassDemo.java

        // String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。
        System.out.println(file.getAbsolutePath());//E:\demo\InnerClassDemo.java

        // String getName() 返回由此抽象路径名表示的文件或目录的名称。
        System.out.println(file.getName());//InnerClassDemo.java

        //判断功能
        // boolean exists() 测试此抽象路径名表示的文件或目录是否存在。
        System.out.println(file.exists());//true

        // boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录。
        System.out.println(file.isDirectory());//false

        //boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件。
        System.out.println(file.isFile());//true

        //创建删除功能
        //boolean createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
        System.out.println(file.createNewFile());//false

        //boolean mkdir() 创建此抽象路径名指定的目录。
        System.out.println(file.mkdir());//false

        //boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
        System.out.println(file.mkdirs());//false

        // boolean delete() 删除此抽象路径名表示的文件或目录。
        System.out.println(new File("E:\\demo\\新建文本文档.txt").delete());//true
        
        // String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
        file = new File("E:\\demo");
        String[] fileArr = file.list();
        for (int i = 0; i < fileArr.length; i++) {
        	System.out.println(fileArr[i]);
		}
        
        //File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。 
        File[] files = file.listFiles();
        for (int i = 0; i < files.length; i++) {
			System.out.println(files[i]);
		}
        
        /**
         * String[] list(FilenameFilter filter):
         * 		返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
         */
        fileArr = file.list(new FilenameFilter() {
			@Override
			public boolean accept(File dir, String name) {
				return new File(dir,name).isDirectory() || name.toLowerCase().endsWith(".java");
			}
		});
        for (int i = 0; i < fileArr.length; i++) {
        	System.out.println(fileArr[i]);
		}
        
        /**
         * File[] listFiles(FileFilter filter): 
         * 		返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。 
         */
        files = file.listFiles(new FileFilter() {
			@Override
			public boolean accept(File pathname) {
				return pathname.isDirectory() || pathname.getName().endsWith(".java");
			}
		});
        for (int i = 0; i < files.length; i++) {
			System.out.println(files[i]);
		}
	}
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值