1. 结构:

注:此IO包下主要介绍:

节点流:(字节流)FileInputStream、FileOutputStream、(字符流)Filereader、FileWriter

处理流(缓冲流):(字节流)BufferedInputStream、BufferedOutputStream、(字符流)BufferedReader、BufferedWriter

转换流:InputStreamReader、OutputStreamWriter

标准输入输出流:InputStream、OutputStream

  1. java.io.File类的使用

  2. io原理以及流的分类:

    按操作数据单位不同:字节流(8bit)主要处理除了文本文件以外的问文件、字符流(16bit)主要处理文本文件。

    按数据流的流向不同:输入流、输出流

    按流的角色不同:节点流(直接作用于文件的,可以从一个特定的数据源读写数据(文件、内存):FileInputStream、FileOutputSteam、FileReader、FileWriter)、处理流(除了以上四个之外都是,连接已存在的流(节点流、处理流)之上,通过对数据的处理为程序提供更为强大的功能)

    • 文件流(1):

      FileInputStream、FileOutputStream、FileReader、FileWriter
    • 缓冲流(1):

      BufferedInputStream、BufferedOutputStream

      BufferedReader、BufferedWriter
    • 对象流–序列化和反序列化(2):

      ObjectInputStream、ObjectOutputStream
    • 随机存取文件流(2):

      RandomAccessFile
    • 转换流(3):

      InputStreamReader、OutputStreamWriter
    • 标准输入、输出流
    • 打印流(4):

      PrintStream、PrintWriter
    • 数据流(4):

      DateInputStream、DateOutputStream

注:要求掌握的级别1-4

重要方法:

  • int read() throws IOException//读取一个字节并以正数的形式返回(0-255),结束返回-1
  • int read(byte[] b) throws IOException//读取一系列字节并存储到一个数组b,返回实际读取的字节数,结束返回-1
  • int read(byte[] b,int offset,int length) throws IOException

    //读取length个字节并存储到一个数组b,返回实际读取的字节数,结束返回-1
  • void close() throws IOException
  • int write() throws IOException//写入一个字节并以正数的形式返回(0-255),结束返回-1
  • int read(byte[] b) throws IOException//写入一系列字节并存储到一个数组b,返回实际读取的字节数,结束返回-1
  • int read(byte[] b,int offset,int length) throws IOException

    //写入length个字节并存储到一个数组b,返回实际读取的字节数,结束返回-1

注意:IO有非常多的知识点这里只是记录了一点,至于其他的知识点大家可以去网上自行查阅。

IO流(2)—知识结构的更多相关文章

  1. Java基础之IO流

    很长时间都没有更新了,最近在补充JavaSE的一些细节部分 关于IO流的一些总结 首先要介绍的是File类,File类用于对文件和目录的一些操作 1.创建文件CreateNewFile() 2.对文件 ...

  2. Java中IO流,输入输出流概述与总结

    总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入 ...

  3. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  4. java IO流详解

    流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  5. IO流总结

    IO流的作用:用于设备和设备之间的数据传输. IO流的概念:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象. IO流的分类:  按照操作数据的类型分为两种: 字节流和字符流.  按 ...

  6. IO流

    流的概念和作用 学习JavaIO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特 ...

  7. Java IO流学习总结

    Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  8. 揭开Java IO流中的flush()的神秘面纱

    大家在使用Java IO流中OutputStream.PrintWriter --时,会经常用到它的flush()方法. 与在网络硬件中缓存一样,流还可以在软件中得到缓存,即直接在Java代码中缓存. ...

  9. java IO流 之 其他流

    一.内存操作流(ByteArrayInputStream.ByteArrayOutputStream) (一).   public class ByteArrayInputStream extends ...

  10. java IO流 之 字符流

    字符是我们能读懂的一些文字和符号,但在计算机中存储的却是我们看不懂的byte 字节,那这就存在关于字符编码解码的问题.所以在学习Io流的字符流前我们先了解些关于编码问题. 一.字符集与字符编码 1.什 ...

随机推荐

  1. angular 2+ 变化检测系列一(基础概念)

    什么是变化检测? 变化检测的基本功能就是获取应用程序的内部状态(state),并且是将这种状态对用户界面保持可见.状态可以是javascript中的任何的数据结构,比如对象,数组,(数字,布尔,字符串 ...

  2. javascript小例子:實現四方向文本无缝滚动效果

    实现一个文本无缝滚动的效果: <!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="zh-CN" class= ...

  3. vs code 前端如何以服务器模式打开 [安装服务器] server insteall

    首先要安装 vs code 和 node.js(既然是前端就必须回,不会的面壁思过)然后在命令符中输入 npm install -g live-server 进行安装,(简单的NPM安装)安装成功后在 ...

  4. 【Android】Android 代码判断当前设备是否为模拟器

    [Android]Android 代码判断当前设备是否为模拟器 方法比较简单,直接粘贴代码 //判断当前设备是否是模拟器.如果返回TRUE,则当前是模拟器,不是返回FALSE public stati ...

  5. Centos6.5下通过shell脚本快速安装samba服务器

    使用方法如下: 上传脚本到linux服务器授权

  6. Flink--Window apply

    和window的操作类似,只不过操作更加灵活,具体的操作需要在匿名内部类的方法中实现:当有比较复杂的需求时候,可以使用: object WindowApply { def main(args: Arr ...

  7. Python学习(二) —— 运算符

    一:Python的编码 python2的默认编码是ascii码,而python3的默认编码是utf-8 ASCII(American Standard Code for Information Int ...

  8. 006 numpy常用函数

    属于Numpy的函数. 一:通用函数 1.说明 是一种对ndarray中的数据执行元素级运算的函数. 2.一元函数 3.二元函数 二:矢量计算 1.numpy.where 主要有两种用法 np.whe ...

  9. 用jquery设置的值,miniui.getData取不到

    用jquery设置的值,miniui.getData取不到

  10. SQL语句中单引号、双引号和反引号的区分

    反引号 反引号:反引号一般在Esc键的下方,为了区分MySQL的保留字与普通字符而引入的符号. 一般我们建表时都会将表名,库名都加上反引号来保证语句的执行度. 例如: SELECT * FROM `u ...