ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java之I/O流

2021-11-21 20:30:20  阅读:104  来源: 互联网

标签:输出 java 字节 int 子类 read new


I/O

一、流的分类:

  1. 从流动方向上看:
    • 输入流:比如 system。in
    • 输出流:比如 system.out
  2. 从读取类型上分:
    • 字节流
    • 字符流
  3. 从发生的源头上分:
    • 节点流:直接操作目标设备对应的流。如文件流,标准输入输出流
    • 过滤流:继承带有关键字 Filter 的流。用于包装操作节点的流,方便读写各种类型的数据

二、字节流

InputStream

子类:

在这里插入图片描述

方法说明
abstract int read ()从流中读入数据需要子类覆盖,而本类中的其他带参数的read方法不是抽象方法,他们都调用read ()
int read (byte b[])读入多个字节到缓存区中,同时返回读到的字节数目,如果读完则返回-1
int read (byte b[], int off, int len)从输入流中读取最大长度为len的数据,写入数组b中从索引off开始的位置,并返回实际读取的字节数,如果读完则返回-1
方法说明
write (int b)将一个整数输出到流中(只输出低八位字节,其他二十四位忽
略)。
write (byte b[])将字节数组中的数据输出到流中。
write (byte b[], int off, int len)将数组b中从off指定的位置开始,长度为len的数据输出到流
中。
flush()刷空输出流,并将缓冲区中的数据强制送出,只有
BufferedOutputStream给出真正实现,其他流都是调用该流传
入对象的相应方法。当需要建立一个输出缓冲区,多次写入,
一次写出,一定要用BufferedOutputStream,否则写入流的数
据没有缓存功能。
close ()关闭流并释放相关的系统资源。

Outputstream

子类:

在这里插入图片描述

三、标准输入输出流

  • 标准输入,对象是键盘,java 对应类是 system.in
  • 标准输出,对象是屏幕, java 对应类是 system.out

四、字符流

Reader

子类:
在这里插入图片描述

Writer

子类:

在这里插入图片描述

字节流与字符流之间的转化:

输入的字节流转为字符流需要用到 inputstreamReader 的构造方法:

InputStreamReader ins = new InputStreamReader(System.in);
InputStreamReader ins = new InputStreamReader(new FileInputStream("test.txt"));

输出字符流转为字节流用到 OutputStreamWriterPrintWriter 的构造方法:

OutputStreamWriter outs = new OutputStreamWriter(new FileOutputStream("test.txt"));

标签:输出,java,字节,int,子类,read,new
来源: https://blog.csdn.net/trbet/article/details/121459507

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有