java之File用法

1.//封装文件或者文件夹

File file = new File("D:\\Project");
        if(file.exists())
        {
            if(file.isDirectory())
            {
                System.out.println(file+" isDirectory");
            }else
            {
                System.out.println(file+" isFile");
            }
        }else
        {
            file.mkdirs();
        }

        File file2 = new File("D:\\Project\\1.txt");
        if(file2.exists())
        {
            if(file2.isDirectory())
            {
                System.out.println(file2+" isDirectory");
            }else
            {
                System.out.println(file2+" isFile");
            }
        }else
        {
            file2.createNewFile();
        }

        File[] files = file.listFiles();
        for (File f : files) {
            System.out.println(f);
        }
             //获取可用目录
        File[] listRoots = File.listRoots();
        for (File file : listRoots) {
            System.out.println(file);
        }

2.对文件和文件夹的操作

System.out.println(file2.getAbsolutePath());
        System.out.println(file2.getParent());
        System.out.println(file2.getPath());
        System.out.println(file2.getName());

        File file3 = new File("D:\\Project\\2.txt");
        //renameTo前提file3文件不存在,可当做是move文件并重命名,返回true
        System.out.println(file2.renameTo(file3));

3.File对象作为参数传递给流的构造函数

        FileOutputStream out = new FileOutputStream(file3);
        byte[] bytes = "abcdefgh".getBytes();
        for (byte b : bytes) {
            out.write(b);
        }
        out.close();

        File file4 = new File("D:\\Project\\3.txt");
        if(!file4.exists())
        {
           file4.createNewFile();   
        }
        FileInputStream in = new FileInputStream(file3);
        FileOutputStream out2 = new FileOutputStream(file4);
        int b;
        while ((b = in.read()) != -1) {
            out2.write(b);
        }
        in.close();
        out2.close();

猜你喜欢

转载自blog.csdn.net/yaonga/article/details/74301845
今日推荐