Java基础相关6(IO)

本文详细介绍了Java中的File类,包括如何创建、删除文件和目录,以及访问目录内容。接着,探讨了Java IO系统,讲解了InputStream和OutputStream这两个基础流,以及文件流、缓冲流、对象流和字符流的使用,特别是文件复制、写入文本数据和按行读取文本数据的操作。最后,总结了Java IO中的关键概念和技巧。
摘要由CSDN通过智能技术生成

java基础相关6

File类

File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径)

使用File可以做到:

  1. 访问其表示的文件或目录的属性信息,例如:名字,大小,修改时间等等
  2. 创建和删除文件或目录
  3. 访问一个目录中的子项

但是File不能访问文件数据.

创建File时要指定路径,而路径通常使用相对路径。 相对路径的好处在于有良好的跨平台性。 **"./"**是相对路径中使用最多的,表示"当前目录",而当前目录是哪里 取决于程序运行环境而定,在idea中运行java程序时,这里指定的 当前目录就是当前程序所在的项目目录。

可用操作

File file = new File("./test.txt");

String name = file.getName();
System.out.println(name);   //test.txt

//返回文件大小  单位是字节
long length = file.length();
System.out.println("大小:"+length + "字节");  //大小:14字节

//是否可读
boolean cr = file.canRead();
//是否可写
boolean cw = file.canWrite();
//是否隐藏
boolean ih = file.isHidden();
//获取绝对路径
System.out.println(file.getAbsolutePath());   //D:\...

创建一个新文件

boolean exists()判断当前File表示的位置是否已经实际存在该文件或目录

createNewFile()方法,可以创建一个新文件

//在当前目录下新建一个文件:test.txt
        File file = new File("./test.txt");
        //boolean exists()判断当前File表示的位置是否已经实际存在该文件或目录
        if(file.exists()){
   
            System.out.println("该文件已存在!");
        }else{
   
            file.createNewFile();//将File表示的文件创建出来
            System.out.println("文件已创建!");
        }

删除一个文件

这个操作会直接删除文件,没有挽回的余地,不会放在回收站里可以还原。

File file = new File("test.txt");
        if(file.exists()){
   
            file.delete();
            System.out.println("文件已删除!");
        }else{
   
            System.out.println("文件不存在!");
        }

创建目录

mkDir():创建当前File表示的目录

mkDirs():创建当前File表示的目录,同时将所有不存在的父目录一同创建
File dir = new File("./a/b/c/d/e/f");

        if(dir.exists()){
   
            System.out.println("该目录已存在!");
        }else{
   
//            dir.mkdir();//创建目录时要求所在的目录必须存在
            dir.mkdirs();//创建目录时会将路径上所有不存在的目录一同创建
            System.out.println("目录已创建!");
        }

删除目录

delete()方法可以删除一个目录,但是只能删除空目录。

 File dir = new File("demo");
//        File dir = new File("a");
        if(dir.exists()){
   
            dir.delete();//delete方法删除目录时只能删除空目录
            System.out.println("目录已删除!");
        }else{
   
            System.out.println("目录不存在!");
        }

访问一个目录中的所有子项

listFiles 可以访问一个目录中的所有子项

//获取当前目录中的所有子项
        File dir = new File(".");
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值