Java学习之File文件

作者: 戒律和尚 | 来源:发表于2019-04-26 08:28 被阅读9次

    “谦虚其心,宏大其量 --摘自阳明先生语录”

    前言
    Java中File类是java.io包中唯一代表磁盘文件本身的对象,可以通过该类来操作系统上文件系统中的文件或目录。

    可以获取如文件名、文件所在目录、文件的长度、文件读写权限等,但是不能通过File获取文件内容,
    也就是说它只是抽象的代表了磁盘上的某个文件或目录,内部实际上是依赖一个平台无关的本地文件系统类,并且 File 无法对其所表示文件内容进行任何读写操作(那是流做的事情)。

    File类的构造方法:
    File(String pathname):根据路径名称构建File对象
    File(String parent, String child):根据父路径和子路径构建File对象
    File(File parent, String child):根据父路径File对象和子路径构建File对象
    File(URI uri):通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例

    public static void main(String[] args) {
            File file = new File("D:\\test.txt");
            File  file2  =  new File("D:\\test.txt","test2.txt");
            File  file3  =  new File(file,"test3.txt");
            try {
                File  file4  =  new File(new URI(""));
            } catch (URISyntaxException e) {
                e.printStackTrace();
            }
    }
    

    File类实现了Serializable, Comparable两大接口以便于其对象可序列化和比较,这上面的代码片段只是构建了File对象,我们可以通过其方法来操作文件。
    创建文件:

    public static void main(String[] args) {
        File file = new File("E:\\test.txt");
        try {
            file.createNewFile();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    

    createNewFile方法将在在指定位置创建一个空文件,成功就返回true,如果已存在就不创建然后返回false,这里需要注意\斜杠问题,在Windows中分隔符为\,在Unix/Linux中分隔符为/,所以我们在构建File对象时应该使用File类中的常量separator,如:

    public static void main(String[] args) {
        File file = new File("E:" + File.separator + "test.txt");
        try {
            file.createNewFile();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    

    创建文件夹:

    public static void main(String[] args) {
        File file = new File("E:" + File.separator + "hello");
        file.mkdir();
    }
    

    mkdir方法会在指定位置创建目录,返回boolean,创建成功返回true,不成功返回false,如果需要创建所有层级的目录那么需要调用mkdirs方法,如:

    public static void main(String[] args) {
        File file = new File("E:" + File.separator + "hello" + File.separator + "world");
        file.mkdirs();
    }
    

    返回值和mkdir相同。

    File类的其他常用方法:

    1、renameTo(File dest):重命名文件或文件夹
    2、delete() :删除文件或一个空文件夹
    3、isDirectory():是否是目录
    4、isFile():是否是文件
    5、exists():判断文件或目录是否存在
    6、getPath():获取相对路径
    7、getName():获取名称
    8、length():获取文件的大小
    9、lastModified():获取文件最后修改时间
    这里只列出一部分方法,更多的方法需要同学们去查看API,查看API也是一个非常好的习惯。

    注意事项:
    (1)Java程序的删除不走回收站。
    (2)如果目录内还有内容就不能删除。

    如果你觉得还不错请分享出去
    你也可以关注公众号,新文章会第一时间发到公证号

    1555737540494.jpg

    相关文章

      网友评论

        本文标题:Java学习之File文件

        本文链接:https://www.haomeiwen.com/subject/ymytnqtx.html