• 一、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的特有功能

  • 相关阅读:
    【Linux】- 文件基本属性
    【Linux】- mv命令
    【Linux】- 守护进程supervisor安装使用
    【Linux】- rm命令
    【Linux】- 开启远程连接
    【Redis】- 安装为windows服务
    Apache2.4 与 php7.1.6的链接
    apache2.4 的安装
    MySQL v5.7.18 版本解压安装
    网站系统消息表设计
  • 原文地址:https://www.cnblogs.com/zhangchengbing/p/8280627.html
Copyright © 2020-2023  润新知