JavaIO流入门1文件File

简介: IO流入门1 文件FileFile流层次图创建文件对象相关的构造和方法方式一:new File(路径)方式二 new File(父目录文件对象, 子路径)方式三:new File(父目录文件,子路径)常用的文件操作目录的操作和文件的删除boolean mkdirs = file.mkdirs();//创建多级目录

File流层次图

982fa313b5224ec7a4a8a51cb656672e.png

创建文件对象相关的构造和方法


常用的三种创建对象的方法:


方式一:根据路劲构建一个File对象


方式二:根据父目录文件对象+子路径构建


方式三:根据父目录文件+子路径构建


构建形式new File();


createNewFile()方法才会创建文件到磁盘上!


方式一:new File(路径)


new File(String pathname)


new File(String pathname)根据路劲构建一个File对象


直接写入文件路径就ok了


 @Test
    public void create01(){
        //直接把路径写清楚就可以了
        String filePath="f:\\news1.text";
        File file = new File(filePath);
        try {
            file.createNewFile();//会报一个IO异常。
            System.out.println("文件创建成功!!!!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

b176b425f66240f28d0074c57de4eca1.png

方式二 new File(父目录文件对象, 子路径)


//根据父目录文件对象+子路径构建


//如果创建"f:\news2.text" 则parentfile 就是f:\


 @Test
    public void create02(){
        File parentfile = new File("f:\\");//父目录文件
        String fileName="news2.text";//子路径
        File file = new File(parentfile, fileName);
        try {
            file.createNewFile();
            System.out.println("文件创建成功!!!!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

f73b5f26a89940aaa63c0030ab3ad5b6.png747e20eeb78c4b599ea77f9852d5b62e.png

``createNewFile()`方法才会创建文件到磁盘上!


常用的文件操作


da7f818e4e864ff6bb7aea197348ccbc.png


一些小案列:


@Test
    public void info(){
        //先创建文件对象
        File file = new File("f:\\news1.text");
        //调用相应的方法就行,看一个案列
        System.out.println("文件名字:"+file.getName());
        System.out.println("绝对路径:"+file.getAbsolutePath());
        System.out.println("文件父目录:"+file.getParent());
    }


成功拿到文件名字:

bc65af853c6444bf8628f13dfd5a06be.png


接下来演示获取文件大小


我们先打开文件编辑一点文字


一个汉字3字节 一个字母1字节


2bc500d2fc734dadb68ccb8d7b68a9ab.png


```java
 @Test
    public void info(){
        //先创建文件对象
        File file = new File("f:\\news1.text");
        //调用相应的方法就行,看一个案列
        System.out.println("文件名字:"+file.getName());
        System.out.println("绝对路径:"+file.getAbsolutePath());
        System.out.println("文件父目录:"+file.getParent());
        System.out.println("文件大小(按字节):"+file.length());
    }


f3985686f8ec468aa20e3552bc41bdb6.png

目录的操作和文件的删除


mkdir:创建一级目录


mldirs:创建多级目录


delete:删除空目录或者文件


删除操作


public void m1(){
        String fileName="F://news2.text";
        String fileName2="F://news4.text";
        File file = new File(fileName);
        File file2 = new File(fileName2);
        if(file.exists()){
            boolean delete = file.delete();
            if(delete){
                System.out.println("news2.text删除成功");
            }else{
                System.out.println("news2.text删除失败");
            }
        }else{
            System.out.println("对不起没有该文件");
        }
        if(file2.exists()){
        }else{
            boolean delete = file.delete();
            if(delete){
                System.out.println("news4.text删除成功");
            }else{
                System.out.println("news4.text删除失败");
            }
            System.out.println("对不起没有该文件news4.text");
        }
    }


0f90ccec902d4b5b903adb6c067e08aa.png


判断目录是否存在


体会:在Java编程中,目录也是一种文件的存在


先创建一个文件


8343a75cda9d44ba88d3634c18703a15.png

 @Test
    public void m2(){
        String fileName="F://Demo";
        File file = new File(fileName);
        if(file.exists()){
            boolean delete = file.delete();
            if(delete){
                System.out.println("删除成功");
            }else{
                System.out.println("删除失败");
            }
        }else{
            System.out.println("对不起没有该目录");
        }
    }

7b59ec2016724f268a893f0a0f9e3159.png


boolean mkdirs = file.mkdirs();//创建多级目录

判断"F://Demo//a"是否存在?不存在就创建


mkdir()创建一级目录


mkdirs()创建多级目录


@Test
    public void m3(){
        String fileName="F://Demo//a";
        File file = new File(fileName);
        if(file.exists()){
            System.out.println("该目录存在");
        }else{
            boolean mkdirs = file.mkdirs();//创建多级目录
            if(mkdirs){
                System.out.println("创建成功");
            }else{
                System.out.println("创建失败");
            }
        }
    }


第一次运行


f38a656cc26f401298c2d3152314593f.png


第二次运行:


73aaeefd505f4df293851298c2c6388d.png

目录
相关文章
|
5月前
|
存储 Java 测试技术
Java-File类与IO流(1)
Java-File类与IO流(1)
36 0
|
5月前
|
存储 自然语言处理 Java
Java-File类与IO流(2)
Java-File类与IO流(2)
33 0
|
存储 Java Unix
【Java|基础篇】File类和IO流
.File类 File类是Java中用于表示文件或目录的类。它提供了一些方法来操作文件和目录的属性和内容,可以进行文件的创建、删除、重命名等操作。
|
存储 移动开发 Java
【Java 基础】File & IO流
【Java 基础】File & IO流
Java基础进阶IO流-文件复制
Java基础进阶IO流-文件复制
Java基础进阶IO流-文件复制
|
Java 索引
Java文件IO流的操作总结
Java文件IO流的操作总结
114 0
Java 进阶File类、IO流
Java 进阶File类、IO流
182 0
Java 进阶File类、IO流
|
Java
JavaIO流(1)--File类的使用
JavaIO流(1)--File类的使用
72 0