Java基础之IO输入输出流

一、总概:  

  Java的IO痛java.io包下的类和接口来支持,在java.io包下主要包括输入、输出两种流,每种输入、输出流又可分为字节流和字符流两大类。其中字节流以字节为单位来处理输入。输出操作,而字符流则以字符来处理输入、输出操作。除此之外,Java的IO流使用了装饰器设计模式,将IO流分成底层节点流和上层处理流,其中节点流用于和底层物理节点直接关联--不同的物理节点获取节点流的方式可能存在一定差异,但程序可以把不同的物理节点流包装成统一的处理流,从而允许程序使用统一的输入、输出代码来读取不同的物理存储节点的资源。

二、File类:

    1.File类的创建:

     希望在程序中操作文件和目录,都可以通过File类来完成。不管是文件还是目录都是使用File来操作的,File能新建、删除、重命名文件和目录,File不能访问文件内容本身。如需要访问内容本身则需要使用输入/输出流。

    File类可以使用文件路径字符串来创建File实例,该文件路径字符串既可以是绝对路径,也可以是相对路径。在默认情况下,系统总是依据用户的工作路径来解释相对路径,这个路径由系统属性“user.dir”指定,通常也就是运行Java虚拟器时所在的路径。

//以路径path来创建File对象
File file=new File("path");
if (!file.exists()) {  
            try {  
                file.createNewFile();       //如果不存在则创建新的file  
            } catch (IOException e) {  
                System.out.println(e.getMessage());  
            }  
        }  

        2.File文件过滤器:

      在File类的list()方法中可以接收一个FilenameFilter参数,通过该参数可以只列出符合条件的文件。

File file=new File("");
        String[] list = file.list(new FilenameFilter() {
           //返回以name为过滤条件的
            @Override
            public boolean accept(File dir, String name) {
                return false;
            }
        });
三、Java中的IO流的分类:

   IO流是实现输入/输出的基础,通过流的方式允许Java程序使用相同的方式来访问不同的输入/输出源。

   1.输入流、输出流:

      输出流:数据从内存到硬盘,只能从中读取数据不能向其写入数据;

      输入流:只能向其写入数据,不能从中读取数据。

   2.字节流和字符流:用法一样,区别在与字节流操作的数据单元是八位字节,字符流操作的数据单元是十六位字符(InputStream/Reader,OutputSteam/writer)。

    3.节点流和处理流:从一个特定的IO设备读/写的流为节点流;处理流用于对一个已存在的流进行连接或封装。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值