zoukankan      html  css  js  c++  java
  • JAVA 中的文件读取

    1. InputStream / OutputStream
    处理字节流
    抽象类:所有输入、输出(内存)类的超类,一般使用 FileInputStream / FileOutputStream

    输出字符 utf8 编码:如 4431

    2. InputStreamReader / OutputStreamWriter
    处理字符流
    抽象类
      InputStreamReader:字节流通向字符流的桥梁,将字节流转换为字符流
      OutputStreamWriter:字符流通向字节流的桥梁,将字符流转换为字节流

    输出字符:一个个字符,如:a 或者 陈(汉字)

    3. BufferedReader / BufferedWriter
    Reader 类扩展,文本读取的通用缓冲方式,readLine 方法读取一个文本行,从【字符输入流】读取文本,缓冲各个字符,以提高字符、数组和行的读取效率。
    Writer 类扩展而来,文本写入的通用缓冲方式,newLine 使用平台自己的行分隔符,将文本写入【字符输出流】,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。

    输出文本行


    InputStream 能从来源处读取一个一个字节(Byte),所以他是最低级的。

    进化过程:
      FileInputStream(byte)  -->  InputStreamReader(字符)  -->  BufferedReader(行)

    InputStreamReader 与 FileReader 的区别:
      InputStreamReader 是用来读取原始字节流,可指定编码格式
      FileReader 是读取字符流,使用系统默认的编码格式,当读取中文文件是易出现乱码问题。

  • 相关阅读:
    CSS 之 div中文字超出时自动换行
    架构设计分享之权限系统(看图说话)
    perl杂项
    nginx比较apache
    Apache与Nginx的优缺点比较
    DVB系统中PCR的生成和PCR校正
    相关软件测试工具
    我遇到的有趣面试题:破解程序
    OpenStack 部署运维实战
    一些大公司的开源项目及代码托管平台
  • 原文地址:https://www.cnblogs.com/jarod99/p/9433630.html
Copyright © 2011-2022 走看看