Java IO的原理 入门理解,input和output和java程序的关系

1.Java IO的原理

  1. IO流用来处理设备之间的数据传输
  2. Java程序中,对于数据的输入或者输出操作都是以“流(stream)”的方式来进行的
  3. java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,并通过标准的方法输出或者输出数据

2.input和output的理解

  1. 输入input:读取外部数据(磁盘、光盘等存储设备的数据)到程序(内存)中
  2. 输出output:将程序(内存)数据输出到磁盘、光盘等存储设备中
  3. 从网络中读取或者输出也是一样的概念

读取不同的文件
5. 树

3.IO流的分类

  1. 按操作数据单位不同分为:字节流(8bit),字符流(16bit)(处理文本文件)
  2. 按照数据流的流向不同分为:输入流,输出流
  3. 按流的角色不同分为:节点流(文件流–>直接作用于文件),处理流
(抽象基类)字符流字节流
输入流ReaderInputStream
输出流WriteOutputStream
  1. Java的IO流共涉及40多个类,实际上非常有规则和规律,都是从上表中的4个抽象基类派生的
  2. 由这4个类派生出来的子类名称都是以其父类名作为子类名的后缀
  3. 流的分类结构图,注:中间的矩形为一层包一层的。
    图

4.IO流体系(蓝色为重点、常用)

图

5… InputStream 与 Reader的区别和注意点

  1. InputStream 和 Reader 是所有输入流的基类。
  2. InputStream(典型实现:FileInputStream)
    int read()
    int read(byte[] b)
    int read(byte[] b, int off, int len)
  3. Reader(典型实现:FileReader)
    int read()
    int read(char [] c)
    int read(char [] c, int off, int len)
  4. 程序中打开的文件 IO 资源不属于内存里的资源,垃圾回收机制无法回收该资源,所以应该显式关闭文件 IO 资源。

6.OutputStream 和Writer的注意点和区别

  1. OutputStream 和 Writer 也非常相似:
    void write(int b/int c);
    void write(byte[] b/char[] cbuf);
    void write(byte[] b/char[] buff, int off, int len);
    void flush();
    void close(); 需要先刷新,再关闭此流
  2. 因为字符流直接以字符作为操作单位,所以 Writer 可以用字符串来替换字符数组,即以 String 对象作为参数
    void write(String str);
    void write(String str, int off, int len);

7.各种类型的IO流的用法

  1. 节点流(文件流) FileInputStream、FileOuputStrea、FileReader、FileWriter的用法(实现文件的复制)点击节点流用法
  2. 点击进入File类的用法
  3. 点击进入缓冲流,实现文件的复制和注意点
  4. 点击进入 JavaIO转换流的使用和注意点(实现字节流和字符流之间的转换)
  5. 点击进入 Java IO 处理流之:标准输入输出流
  6. 点击进入 Java IO 处理流之:打印流 和 数据流用法
  7. 点击进入 Java IO流 对象流的使用和序列化的注意点
  8. 点击进入 Java IO RandomAccessFile (随机访问流)类随机访问的使用细节详解
  • 13
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值