IO流学习总结
来源:互联网 发布:天津网络推广优化 编辑:程序博客网 时间:2024/05/21 10:24
IO流学习总结
前言
开始学习IO时,面对java里面如此多的IO流令我万分困惑,为什么一件简单的事情设计者非要搞得如此复杂,但是当我深入学习时才明白设计者的天才之处,现在将学习到的IO知识做个总结,从而进一步提升我对IO流这块的理解。
IO流概览
看见这么多类我相信刚开始学习的新人应该都哭晕了,难道我要记住这么多类吗?答案当然不是,理解了自然就记住了
细说IO
节点流
字节流
字节流:可以处理文本,音频,视频等
输入流:InputStream是抽象类
FileInputStream,ByteArrayInputStream是Inputstream的子类
输出流:OutPutStream是抽象类
FileOutputStream,ByteArrayOutputStream是OutputStream的子类这里的输入和输出是以JAVA程序为中心的,流向程序为输入流,流出为输出流 ByteArrayInputStream和ByteArrayOutputStream连接的是java程序和字节数组 FileInputStream和FileOutputStream连接的是java程序和指定文件
字符流
字符流:只能处理纯文本
输入流:Reader是抽象类
FileReader,CharArrayReader是Reader的实现类
输出流:Writer是抽象类
FileWriter,CharArrayWriter是Writer的实现类CharArrayReader和CharArrayWriter连接的是java程序和字符数组 FileReader和FileWriter连接的是java程序和指定文件
处理流
要理解处理流首先要理解JAVA的设计模式之装饰者模式,设计模式的内容就不再这里详述
缓冲流
缓冲流:处理流使得写入和写出变得更加高效
BufferedInputStream,BufferedOutputStream
BufferedReader,BufferedWriter
以BufferedReader为例子:
可以看到创建BufferedReaderd对象时需要传入一个Reader的子类,BufferedReader的提供了readLine()方法可以支持每次读取一个文本行转换流
转换流:是字节流通向字符流的桥梁,可以用来编码和解码
InputStreamReader,OutputStreamWriter
以InputStreamReader为例:
可以看到创建 InputStreamReader对象时需要传入一个InputStream的子类,并且可以传入解码的编码方式
打印流
打印流:PrintStream
4. DataInputStream,DataOutputStream
5.ObjectInputStream,ObjectOutputStream
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- io流学习总结
- Java IO流学习总结
- Java IO流学习总结
- 【java】IO流学习总结
- Java IO流学习总结
- Java IO流学习总结
- Java IO流学习总结
- 分类算法之决策树(Decision tree)
- Python3.6安装NLTK
- find命令
- 客户端状态的存储空间——Session
- keepalived+nginx实现高可用(三)
- IO流学习总结
- 欢迎使用CSDN-markdown编辑器
- bootstrap系列之九下拉菜单
- 运行roscore时出现error while loading shared libraries:libroscpp.so
- (五)JNI学习之C语言基础,typedef与宏定义
- Android系统高通平台Kernel Watchdog
- vue中如何实现样式之间的切换
- 异常:javax.el.PropertyNotFoundException: Property 'xxx' not found on type java.lang.String
- python字符串分割