IO流学习

1,流是一组有顺序的,有起点和重点的字节集合,是对数据传输的总称和抽象。即数据在两个设备之间的传输称作流。流的本质就是数据传输,根据数据传输的特性,将流抽象为各种累,方便直观的进行数据操作。
2,根据处理数据类型不同,分为字符流、字节流
根据数据流向不同,分为输入流、输出流
3,因为数据的编码不同,从而有了对字符进行高效操作的流对象,即字符流,它的本质就是基于字节流读取时,去查了知道的码表
字节流与字符流区别:
读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读取多个字节
处理对象不同:字节流能处理所有类型的数据(图片、avi等),字符流只能处理字符类型的数据
所以,只要处理纯文本数据,应优先考虑使用字符流,除此之外都应使用字节流
4,对于输入流是读操作,对于输出流是写操作
5,输入字节流InputStream
所有输入流的父类,是一个抽象类
ByteArrayInputStream基本的流介质,从byte数组读取文件
StringBufferInpputStream基本的流介质,从StringBuffer中读取数据
FileInputStream基本的流介质,从本地文件中读取数据
PipedInputStream是从与其他线程共用的管道中读取数据
6,输出字节流OutPutStream
所有输出字节流的父类,是一个抽象类
ByteArrayOutputStream基本的流介质,向byte数组写入数据
FileOutputStream基本的流介质,向本地文件中写入数据
PipedOutputStream向与其他线程共用的管道中写入数据
7,字符输入流Reader
所有输入字符流的父类,是一个抽象类
charReader、StringReader是两种基本的介质流,它们分别从char数组,String中读取数据
pipedReader是从与其他线程共用的管道中读取数据
InputStreamReader是连接字节流和字符流的桥梁,它将字节流转变为字符流。FileReader是一个到达此功能常用的工具类,在其源代码中明显使用了将FileInputStream转变为Reader的方法
8,字符输出流Writer
所有输出字符流的父类,是一个抽象类
charArrayWriter、StringWriter两种基本的介质流,分别向Char数组,String中写入数据。
pipedWirter向与其他线程共用的管道中写入数据
BufferedWriter是一个装饰器,为writer提供缓冲功能
OutputStreamWriter是OutputStream到Writer转换的桥梁,它的子类FileWriter是实现此功能的工具类。
9,字符流与字节流转换
转换流的特点
字符流和字节流直接的桥梁
可对读取到的字节数据经过知道编码转换为字符
可对读取到的字符数据经过知道编码转换成字节
具体对象体现
InputStreamReader:字节到字符的桥梁
OutputStreamWriter:字符到字节的桥梁
这两个流对象时字符体系中的成员,他们又有转换作用,所以构造的时候需要传入字节流对象
10,File类
使用对象的思想来操作文件和文件夹,保存文件或目录的元数据信息,如文件名、文件长度、最后修改时间、是否可读、获取当前文件路径名、判断文件是否存在、获取当前目录文件列表、创建、删除文件和目录等方法
IO流学习的更多相关文章
- Java IO流学习总结三:缓冲流-BufferedInputStream、BufferedOutputStream
Java IO流学习总结三:缓冲流-BufferedInputStream.BufferedOutputStream 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/ ...
- Java IO流学习总结八:Commons IO 2.5-IOUtils
Java IO流学习总结八:Commons IO 2.5-IOUtils 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/550519 ...
- Java IO流学习总结(1)
Java IO流学习总结 Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本 ...
- Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter
在上一篇文章中Java IO流学习总结三:缓冲流-BufferedInputStream.BufferedOutputStream介绍了缓冲流中的字节流,而这一篇着重介绍缓冲流中字符流Buffered ...
- Java IO流学习总结一:输入输出流
Java IO流学习总结一:输入输出流 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/54292148 本文出自[赵彦军的博客] J ...
- Java IO流学习
Java IO流学习 Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是 ...
- IO流学习小结
今天刚刚看完java的io流操作,把主要的脉络看了一遍,不能保证以后使用时都能得心应手,但是最起码用到时知道有这么一个功能可以实现,下面对学习进行一下简单的总结: IO流主要用于硬板.内存.键盘等处理 ...
- JAVA.IO流学习笔记
一.java.io 的描述 通过数据流.序列化和文件系统提供系统输入和输出.IO流用来处理设备之间的数据传输 二.流 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数 ...
- (转载) java:IO流学习小结
今天刚刚看完Java的io流操作,把主要的脉络看了一遍,不能保证以后使用时都能得心应手,但是最起码用到时知道有这么一个功能可以实现,下面对学习进行一下简单的总结: IO流主要用于硬板.内存.键盘等处理 ...
- java的Io流学习
Java中io流的学习(一)File:https://blog.csdn.net/qq_41061437/article/details/81672859 Java中io流的学习(二)FileInpu ...
随机推荐
- 51、[源码]-Spring容器创建-容器创建完成
51.[源码]-Spring容器创建-容器创建完成 12.finishRefresh();完成BeanFactory的初始化创建工作:IOC容器就创建完成: 1).initLifecycleProce ...
- sql server 标量函数的用法
函数的内容是把汉字转换成拼音 select dbo.uf_GetSpellCode( book_class) from BOOK_MSG
- LOJ P10150 括号配对 题解
Analysis 区间dp裸题 初始化有点麻烦 i,j能匹配时要特判 #include<iostream> #include<cstdio> #include<cstri ...
- 十二.虚拟Web主机
*********************** 修改apache默认的网页文件存放位置 ]# mkdir /var/www/myweb ]# echo "I am MyWeb" & ...
- jquery验证时间
http://blog.csdn.net/guguojin/article/details/7045908 验证时间的正则表达式集合 //日期格式yyyy PatternsDict.date_y= ...
- 工作流学习之--TPFlow数据库分析
一.TPFlow项目数据库表: 1. 流程相关: a. leipi_flow工作流表: b. leipi_flow_process流程步骤表: c. leipi_run_process运行过程表:记录 ...
- 项目 java.lang.NoClassDefFoundError 异常。
项目部署之后调用接口失败:异常信息: NoClassDefFoundError ClassNotFoundException 注意这两种是有区别的. 具体转 https://www.cnblogs.c ...
- PHP全栈学习笔记27
数组概述,类型,声明,遍历,输出,获取数组中最后一个元素,删除重复数组,获取数组中指定元素的键值,排序,将数组中的元素合成字符串. 数组概述,数组是存储,管理和操作一组变量. 数组类型为一维数组,二维 ...
- 【原创】go语言学习(二十)并发编程
目录 并发和并行 Goroutine初探 Goroutine实战 Goroutine原理浅析 Channel介绍 Waitgroup介绍 Workerpool的实现 并发和并行 1.概念A. 并发:同 ...
- 小程序 之嵌套循环修改index与item
<block wx:for="{{menu}}" wx:key="index"> <view class="cate-item {{ ...