Java的常规文件操作

需求:试验File

package d0320;
/**
 *  @author Administrator
 */

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

public class JavaFile {
    public static void main(String[] args) throws IOException{
        File file = new File("F:\\Java");
        System.out.println("文件的绝对路径"+file.getAbsolutePath());       
        System.out.println("该对象是否是目录:"+file.isDirectory()); 
        System.out.println("该对象是否是文件:"+file.isFile());      
        File par = new File("F:\\Java");
        File file1 = new File(par,"Mine");
        System.out.println("文件的绝对路径"+file1.exists());


        File file2 = new File("F:Java\\Mine\\b.txt");
        System.out.println("该文件是否存在:"+file2.exists());
        //创建一个目录下不存在的文件,在不确定父目录绝对正确的情况下,要捕捉异常
        try {
            file2.createNewFile();
        } catch (IOException e) {
            System.out.println("创建失败!");
            e.printStackTrace();
        }
        System.out.println("该文件是否存在:"+file2.exists());  

        //创建一个文件,如果父目录不存在,则创建之      
            File file3 = new File("F:\\Java\\Me\\a");
            System.out.println("是否创建成功:"+file3.mkdir());
            System.out.println("是否创建成功:"+file3.mkdirs());

        //创建一个空文件夹,并删除
            File file4 = new File("F:\\Java\\My");
            System.out.println(file4.mkdir());

            file4.delete();

        //得到路径
            System.out.println("文件的绝对路径"+file1.getAbsolutePath());
        //得到文件大小(字节数)
            System.out.println("文件大小为:"+file2.length());

        //返回父文件目录
            System.out.println("file2的父目录为:"+file2.getParent());        
        //列出根盘staic File[] listRoots()
            File[] f = file3.listRoots();

            for (File file5 : f) {
                System.out.println(file5);
            }   

        //列出目录下的所有直接子文件
            String[] f1 =(new File("F:\\")).list(); //字符串,无法使用文件的方法     
            for (String string : f1) {
                System.out.println(string);
            }

            File[] f2 =(new File("F:\\")).listFiles();//文件,可以使用文件的方法            
            for (File string : f2) {
                System.out.println(string);
            }

        //该目录下的文件分类
            File fi = new File("F:\\Java\\01、Java基础\\03-数据类型转换、运算符、if语句");
            File[] fil = fi.listFiles();
            System.out.println("目录:");
            for(File ff:fil){
                if(ff.isDirectory())
                    System.out.println(ff.getName());
            }
            System.out.println();
            System.out.println("文件:");
            for(File ff:fil){
                if(ff.isFile())
                    System.out.println(ff.getName());
            }

            //文件名过滤
            File[] str = fi.listFiles(new MyFilter());
            for (File string : str) {
                System.out.println(string);
            }   
    }
}
//文件名过滤器
class MyFilter implements FilenameFilter{
    @Override
    public boolean accept(File dir, String name) {

        return name.endsWith(".png");
    }
}

输出:

文件的绝对路径F:\Java
该对象是否是目录:true
该对象是否是文件:false
文件的绝对路径false

该文件是否存在:false
创建失败!
java.io.IOException: 系统找不到指定的路径。
    at java.io.WinNTFileSystem.createFileExclusively(Native Method)
    at java.io.File.createNewFile(Unknown Source)
    at d0320.JavaFile.main(JavaFile.java:27)
该文件是否存在:false

是否创建成功:false
是否创建成功:false

true

文件的绝对路径F:\Java\Mine
文件大小为:0

file2的父目录为:F:Java\Mine
C:\
D:\
E:\
F:\
G:\

$RECYCLE.BIN
360驱动大师目录
Java
迅雷下载

F:\$RECYCLE.BIN
F:\360驱动大师目录
F:\Java
F:\迅雷下载

目录:
代码
视频

文件:
-128的由来.png
day02变量、关键字.doc
day03流程控制语句.doc
Demo1.class
位运算符.png
左移.png
每天必会.txt
说明.txt
负数的存储原理.png

F:\Java\01、Java基础\03-数据类型转换、运算符、if语句\-128的由来.png
F:\Java\01、Java基础\03-数据类型转换、运算符、if语句\位运算符.png
F:\Java\01、Java基础\03-数据类型转换、运算符、if语句\左移.png
F:\Java\01、Java基础\03-数据类型转换、运算符、if语句\负数的存储原理.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值