javaSE (二十一)字符流IO流小结案例

Posted 秋心无波

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaSE (二十一)字符流IO流小结案例相关的知识,希望对你有一定的参考价值。

1:字符流(掌握)

         (1)字节流操作中文数据不是特别的方便,所以就出现了转换流。

                   转换流的作用就是把字节流转换字符流来使用

         (2)转换流其实是一个字符流

                   字符流=字节流+编码表

         (3)编码表

                   A:就是由字符和对应的数值组成的一张表

                   B:常见的编码表

                            ASCII

                            ISO-8859-1

                            GB2312

                            GBK

                            GB18030

                            UTF-8

                   c:字符串中的编码问题

                            编码

                                     String--byte[]

                            解码

                                     byte[]--String

         (4)IO流中的编码问题

                   A: OutputStreamWriter

                            OutputStreamWriter(OutputStream os):默认编码,GBK

                            OutputStreamWriter(OutputStream os, String charset):指定编码

                   B:InputStreamReader

                            InputStreamReader(InputStreamReader is):默认编码,GBK

                            InputStreamReader(InputStreamReader is,String charset):指定编码

                   C:编码问题其实很简单

                            编码只要一致即可

         (5)字符流

                   Reader

                            |--InputStreamReader

                                     |--FilerReader

                            |--BufferedReader

                   Writer

                            |-- OutputStreamWriter

                                     |--FileWriter

                            |--BufferedWriter

         (6)复制文本文件(5种方式)

2:Io流小结(掌握)

         Io流

                   |--字节流

                            |--字节输入流

                                     InputStream

                                               int read():一次读取一个字节

                                               int read(byte[] bys):一次读取一个字节数组

 

                                               |--FileInputStream

                                               |--BufferedInputStream

                            |--字节输出流

                                     OutputStream

                                               void write(int by):一次写一个字节

                                               void write(byte[] bys,int. index, int len):一次写一个字节数组的一部分

 

                                               |--FileOutputStream

                                               |--BufferedOutputStream

                   |--字符流

                            |--字符输入流

                                     Reader

                                               int read():一次读取一个字符

                                               int read(char[] chs)一次读取一个字符数组

 

                                               |--inputStreamReader

                                                        |--FileReader

                                               1--BufferedReader

                                                        String readLine();一次读取一个字符串

                            |--字符输出流

                                     Writer

                                               void write( int ch):一次写一个字符

                                               void write(char[]cha, int index,int1en):一次写一个字符数组的一部分

 

                                               |--OutputStreamWriter

                                                        |--FileWriter

                                               |--BufferedWriter

                                                        void newline():写一个换行符

                                                        void write(string line):一次写一个字符串

3:案例(理解练习一遍)

         A:复制文本文件5种方式(掌握)

         B:复制图片(二进制流数据)4种方式(掌握)

         C:把集合中的数据存储到文本文件

         D:把文本文件中的数据读取到集合并遍历集合

         E:复制单级

         F:复制单级文件夹中指定的文件并修改名称

                   回顾一下批量修改名称

         G:复制多级文件夹

         H:键盘录入学生信息按照总分从高到低存储到文本文件

         I:把某个文件中的字符串排序后输出到另一个文本文件中

         J:用 Reader模拟 Bufferedreader的特有功能

         K:模拟LineNumberReader的特有功能

以上是关于javaSE (二十一)字符流IO流小结案例的主要内容,如果未能解决你的问题,请参考以下文章

javaSE (二十)递归IO流自学字符流

javaSE (二十二)登录注册IO版本案例数据操作流内存操作流打印流标准输入输出流随机访问流合并流序列化流PropertiesNIO

javaSE第二十一天

JavaSE 学习笔记之IO流(二十二)

JavaSE案例 04——IO流综合运用案例案例

javaSE第二十二天