黑马程序员技术交流社区

标题: IO流的学习 [打印本页]

作者: NewBeeCoder    时间: 2016-9-4 11:24
标题: IO流的学习
IO流分类:
   文本文件  字符   字符流
   其他字节码文件   字节流
O:out  输出  write  
  OutputStream : 字节输出流抽象父类
       |--FileOutputStream  可以操作文件的  将程序中的数据写到文件File中
             构造: FileOutputStream(File file)
                       FileOutputStream(String pathname) 如果文件不存在可以帮忙创建出来
             写数据:
                       write重载
                                写单个字节  一个字节一个字节
                                        写字节数组  
                                        写字节数组一部分
                 关闭流:
                      close()
I:in 输入  读  read
  InputStream : 字节输入流抽象父类
       |--FileInputStream 可以操作文件的 字节输入流  将文件中的数据读取到内存中
             构造: FileInputStream(File file)
                       FileInputStream(String pathname)
             读数据
               int read() 读取一个字节  返回值是 那个字节 只不过用int接收
                                      如果读到了末尾,返回-1
                           int read(byte[] bys) 按照一个字节数组的量去读取,返回值是读取到字节的个数,
                                                如果读到末尾,返回-1
                                                                        byte[]  0, length
                       还有一个方法可以读取字节数组的一部分
                  关闭流:
                     close();
字符流:
    常见编码表(现在作为了解)
     常用的编码表   GBK  UTF-8   拉丁码表(不能识别中文)
                        GBK:英文占一个字节  中文占两个  \r \n
                                        UTF-8:能用一个字节的就用一个  中文占3个
                                       
       
Reader 字符输入流的抽象父类
       |--FileReader 操作文件的字符输入流
         构造 FileReader(File file)
                      FileReader(String pathname)
                 读取:
                     int read() 一个字符一个字符读取 返回值是读到的字符 还是用int来接收
                                    如果读不到  返回-1
                         int read(char[] chs) 使用字符数组读取 将读取到的字符放在数组中,返回值就是读到的字符个数
                         可以读取字符数组的一部分
                 关闭流
                    close()
Writer 字符输出流的抽象父类
       |--FileWriter 操作文件的字符输出流
              构造 FileWriter(File file)
                       FileWriter(String pathname)
                  写
                    write重载  写单个字符
                                   写字符数组
                                           写字符串
                                           写字符数组一部分
                                           写字符串一部分
                  关闭流:
                    close()  先刷新再关闭流
                        flush()  将数据刷新到文件中

读文件 写文件
    1:创建对应的流
        2:做对应的操作
        3:关闭流
复制文件:
    1:创建输入流 跟 数据源文件关联
        2:创建输出流 跟 目标文件冠梁
        3:从数据源中读数据
        4:往目标文件写数据
        5:关闭流
作者: wb277379322    时间: 2016-9-4 12:36
学习一下





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2