IO之File

1.创建File

File(File parent, String child) 根据文件File目录创建子文件对象

File(String pathname) 根据路径创建文件对象

File(String parent, String child) 根据文件目录创建子文件对象

package cn.eminem_24;

import java.io.File;

public class FileTest {

    public static void main(String[] args) {

        File f1 = new File("E:\\demo\test1.txt");

        File f2 = new File("E:\\demo","test2.txt");

        File f3 = new File("E:\\demo");
        File f4 = new File(f3,"tset3.txt");

    }
}

创建功能:

createNewFile() 创建文件

mkdir() 创建文件夹

mkdirs() 创建父目录不存在的子目录

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("e:\\demo");
        System.out.println(file.mkdir());

        File file2 = new File("e:\\demo\\test.txt");
        System.out.println(file2.createNewFile());

        File file3 = new File("e:\\a\\b\\c");
        System.out.println(file3.mkdirs());

    }
}

删除功能:

delete()删除文件或目录

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        // 在项目路径下创建文件
        File file = new File("a.txt");
        System.out.println(file.createNewFile());

        File file2 = new File("aaa\\bbb\\ccc");
        System.out.println(file2.mkdirs());

        // 删除a.txt
        System.out.println(file.delete());

        // 删除ccc文件
        System.out.println(file2.delete());

        File file3 = new File("aaa");
        // 删除aaa文件。无法删除。由于aaa目录下有bbb .先删除bbb,再删除aaa
        System.out.println(file3.delete());

    }
}

重命名功能:

renameTo(File dest) 重命名文件名

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("a.txt");
        file.createNewFile();
        File newFile = new File("aa.txt");
        // 文件跟新文件同一个目录,重命名
        System.out.println(file.renameTo(newFile));

        File file2 = new File("b.txt");
        file2.createNewFile();
        File newFile2 = new File("e:\\bb.txt");
        // 文件跟新文件不再同一个目录,重命名并剪切
        System.out.println(file2.renameTo(newFile2));

    }
}

判断功能:

isDirectory() 是否是目录

isFile() 是否是文件

exists() 是否存在

canRead() 是否刻度

canWrite() 是否可写

isHidden() 是否隐藏

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("a.txt");

        System.out.println(file.isDirectory());// false
        System.out.println(file.isFile());// true
        System.out.println(file.exists());// true
        System.out.println(file.canRead());// true
        System.out.println(file.canWrite());// true
        System.out.println(file.isHidden());// false
    }
}

获取功能:

getAbsolutePath() 获取文件的绝对路径

getPath() 获取文件的相对路径

getName() 获取名称

length() 获取长度,字节数

lastModified() 获取最后一次修改时间,毫秒值

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("a.txt");

        System.out.println(file.getAbsolutePath());// F:\workspace\Spring\JavaCore_CZBK\a.txt
        System.out.println(file.getPath());// a.txt
        System.out.println(file.getName());// a.txt
        System.out.println(file.length());
        System.out.println(file.lastModified());
    }
}

list() 获取文件目录下的所有file文件名称数组

listFiles() 获取文件目录下的所有file文件数组

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("e:");

        String[] fileNameArray = file.list();

        for (String fileName : fileNameArray) {
            System.out.println(fileName);
        }

        File[] fileArray = file.listFiles();

        for (File file2 : fileArray) {
            System.out.println(file2.getName());
        }
    }
}

list(FilenameFilter filter) 通过过滤器获取过滤后的文件名数组

listFiles(FileFilter filter)  通过过滤器获取过滤后的文件数组

通过该方法可以过滤出需要条件的文件、查找以jpg后缀的文件

方式1:

package cn.eminem_24;

import java.io.File;
import java.io.IOException;

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("D:\\beifen2");

        File[] fileArray = file.listFiles();

        for (File file2 : fileArray) {
            if(file2.isFile()){
                if(file2.getName().endsWith(".jpg")){
                    System.out.println(file2.getName());
                }
            }
        }
    }
}

方式2:

package cn.eminem_24;

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

public class FileTest {

    public static void main(String[] args) throws IOException {

        File file = new File("D:\\beifen2");

        File[] fileArray = file.listFiles(new FileFilter() {

            @Override
            public boolean accept(File file) {
                return file.isFile() && file.getName().endsWith(".jpg");
            }
        });

        for (File file2 : fileArray) {
            System.out.println(file2.getName());
        }

    }
}
时间: 2024-10-11 21:08:54

IO之File的相关文章

JAVA之IO技术File类的使用

package ioTest.io3; /* * File类是对文件和文件夹的抽象. * File类的常见方法: * 1.创建 * createNewFile():在指定的位置创建文件,如果该文件已经存在,则不创建,返回false. * 和输出流对象不一样,输出流对象,只要已建立就创建,如果文件存在,则覆盖. * mkdir():创建此抽象路径名指定的目录 * mkdir():创建此抽象路径名指定的目录,包括所有必需但不存在的父目录. * 2.删除 * delete() * deleteOnEx

Java—IO流 File类的常用API

File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOException; public class Demo16 { public static void main(String[] args) { File file = new File("F:\\javaio"); //文件(目录)是否存在 if(!file.exists()) { //

java io包File类

1.java io包File类, Java.io.File(File用于管理文件或目录: 所属套件:java.io)1)File对象,你只需在代码层次创建File对象,而不必关心计算机上真正是否存在对象文件. file类的几个常用方法:file.canRead() boolean ,file.canWrite() boolean,file.canExecute() boolean,file.createNewFile() boolean.(1)file.createNewFile() boole

Storm java.io.FileNotFoundException: File '../stormconf.ser' does not exist

This bug will kill supervisors Affects Version/s: 0.9.2-incubating, 0.9.3, 0.9.4 Fix Version/s: 0.10.0, 0.9.5 问题背景 最近发现刚搭起的Storm集群,没过多久,Supervisor 便悄然死去了一大半.查看死去Supervisor的log,发现java.io.FileNotFoundException: File '../stormconf.ser' does not exist异常.

java IO整理-File

File类 File 类是jam-io 包下代表与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File 类来完成,值得指出的是不管是文件.还是目录都是使用File 来操作的, File 能新建.删除和重命名文件和目录, File 不能访问文件内容本身.如果需要访问文件内容本身,则需要使用输入/输出流. 通过File类可以很方便的操纵文件夹和文件,下面是我写的一个递归程序,能够按层次打印出文件夹的内容,并且通过文件过滤器只输出目录和.exe文件. package File

关于spark入门报错 java.io.FileNotFoundException: File file:/home/dummy/spark_log/file1.txt does not exist

不想看废话的可以直接拉到最底看总结 废话开始: master: master主机存在文件,却报 执行spark-shell语句:  ./spark-shell  --master spark://master:7077 --executor-memory 1G --total-executor-cores 2 报错:WARN TaskSetManager: Lost task 1.0 in stage 0.0 (TID 1, slave02): java.io.FileNotFoundExcep

java之io之File类的list()方法过滤目录的使用

java的io的知识中,File类必须掌握.File类是对文件或者文件夹的封装.它本身并不能对所封装的文件进行读写,它封装的只是文件或文件夹的周边知识,比如 大小啦,创建日期啦,路径啦等等. 如果File封装的文件夹,File类的list()方法可以将此文件夹下的所有文件夹和文件已字符串数组的形式返回. list(FilenameFilter)可以对返回的字符串数组进行过滤,取自己想要的字符串. ?打印文件夹下的.java文件 实现1 package com.westward.io; impor

探究java IO之File类

尽管java.io定义的大多数类用于操作流,但File类却不是.File类直接处理文件和文件系统.也就是说,File类没有指定如何从文件检索信息以及如何向文件中存储信息,而是描述了文件本身的属性.File对象用于获取和操作与磁盘文件关联的信息,例如权限,时间日期以及目录路径,并且还可以浏览子目录层次. 注意:由JDK7为NIO系统增加的Path接口和File类,在许多情况下都为File类提供了强大的替换方案,具体看后面的NIO章节. 下面的构造函数可以用于创建File对象: File(Strin

Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)

第一讲     File类 一.概述 1.File类:文件和目录路径名的抽象表现形式 2.特点: 1)用来将文件或文件夹封装成对象 2)方便于对文件与文件夹的属性信息进行操作 3)File类的实例是不可变的:也就是说,一旦创建,File 对象表示的抽象路径名将永不改变 4)File对象可以作为参数传递给流的构造函数 二.File对象创建 方式一: File f =new File("a.txt"); 将a.txt封装成File对象.可以将已有的和未出现的文件或者文件夹封装成对象. 方式