A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Lee0

初级黑马

  • 黑马币:38

  • 帖子:17

  • 精华:0

本帖最后由 Lee0 于 2017-11-29 18:17 编辑

IO流:用于设备之间的数据传输

关于IO流的分类:
     按照流向分为输出流和输入流;
     按照数据类型分为字符流和字节流;

下面为我总结的IO流的大体知识结构
        字符流:(只能操作纯文本文件)
                输入流:Reader
                              FileReader  构造方法:file对象、String 字符串文件名
                              BufferedReader 构造方法:reader对象
                                               高效流,可以一次读取一行
                              InputStreamReader 构造方法:InputStream对象
                                               转换流,字节流通向字符流的桥梁
                                               通过构造方法可以使用指定编码集进行转换                                               (InputStreamReader(InputStream in, String charsetName))
                 输出流:Writer
                              FileWriter 构造方法:file对象(,true)、String类型文件名(,true)
                                               如果文件需要追加写入,可以通过构造方法后面加true来实现
                              BufferedWriter 构造方法:writer对象
                                               高效流,特有方法:newLine()方法 换行 与系统无关
                              OutputStreamWriter 构造方法:outputStream对象
                                               转换流,字符流通向字节流的桥梁
                                               通过构造方法可以使用指定编码集进行转换
                                              (OutputStreamWriter(OutputStream out, String charsetName))
                             PrintWriter 构造方法:file对象、outputStream对象(,true)、String文件名、writer对象(,true)
                                                打印流,构造方法传字符流或字节流对象后加true可以实现自动刷新
                                                可自动刷新的方法有println()、printf()、format()
                                                Println()方法可以自动换行 与系统无关
        字节流:(可以拷贝任何类型的文件)
                输入流:InputStream
                              FileInputStream 构造方法:file对象、String文件名
                              ObjectInputStream构造方法:InputStream对象
                                                对象流,反序列化流, 可以从文件中读取对象 使用方法 Obejct readObject()
                                                使用自定义类时,需实现序列化接口(Serializable接口) 才能从文件中读取
                                                注意:若要类无论如何修改都能正常进行序列化与反序列化,必须生成序列号。
                                                          一定是先序列化,才能进行反序列化。(先写才能读)
                               Static InputStream in     
                                                标准输入流  System.in
                输出流:OutputStream
                                FileOutputStream 构造方法:file对象(,true)、String文件名(,true)
                                                  如果文件需要追加写入,可以通过构造方法后面加true来实现
                                ObjectOutputStream 构造方法:OuputStream对象
                                                   对象流,序列化流, 将对象写入文件 使用方法:void writerObject(object)
                                                   使用自定义类时,需实现序列化接口(Serializable接口) 才能从文件中读取
                                PrintStream 构造方法 file对象、outputStream对象(,true)、String文件名(,true)
                                                   打印流,构造方法传字符流或字节流对象后加true可以实现自动刷新
                                                   可自动刷新的方法有println()、printf()、format()
                                                   Println()方法可以自动换行 与系统无关
                                Static PrintStream out
                                                   标准输出流。  System.out
当使用IO流的时候可以先进行判断再决定使用哪个流:
1.考虑是输入还是输出?
2.传输的数据为什么格式?文本还是其他数据
3.是否需要使用转换流?字符转字节或者字节转字符
4.是否需要用高效流?一次读取一行



应该懂得这样一个道理:要努力,努力,再努力;如果开始不成功,还要努力,努力,再努力。 —— 威·希克森









点评

io流的重点基础,总结的很到位,可以直接当笔记使用了  发表于 2017-12-2 23:57

39 个回复

倒序浏览
排班整洁,总结的也不错,继续努力
回复 使用道具 举报
一看就是敲代码习惯了哈哈,不错。
回复 使用道具 举报
要努力,努力,再努力;如果开始不成功,还要努力,努力,再努力,这句话喜欢
回复 使用道具 举报
写的很好!很具体!!向你学习
回复 使用道具 举报
很全面,开过了基础班还有进阶阶段的所有内容,对于我这种IO流比较薄弱的人来说还是很有帮助的!
简单明了,言简意赅!
回复 使用道具 举报
System.in一般不轻易关闭
回复 使用道具 举报
正好需要,很棒   手动比心!!!!!
回复 使用道具 举报
IO流总结的很不错,既全面,又简洁
回复 使用道具 举报
认真的看过了这位同学写的代码,又一次帮我复习了一下io 流的知识,
真的不错, 总体内容很全面都是课上的重点.
回复 使用道具 举报
总结的到位,最后使用哪个流的经验总结对我很有用处
回复 使用道具 举报
ycbin 初级黑马 2017-12-2 14:44:57
12#
总结的挺好
回复 使用道具 举报
刚好今天做作业就用到了 感谢老铁
回复 使用道具 举报
感谢谢你让我更深一层的记住IO流
回复 使用道具 举报
内容详细 工整美观
回复 使用道具 举报
非常详细的解释, 非常受益, 看好你!
回复 使用道具 举报
正好io学得不好 总结的很全面   十分感谢
回复 使用道具 举报
总结到位,谢谢分享!!!
回复 使用道具 举报
条理清晰,像记忆树一样,有主干,也有细枝末节,关联性这么好,谢谢腿哥,膜拜之后就是模仿了,嘿嘿get。
回复 使用道具 举报
io总结的还不错。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马