• 字符流


    字符流:
    字符输入流(读)
    Reader类抽象类
    Reader类的常用方法:
    int read()
    int read(char[] c)
    read(char[] c,int off,int len)
    void close()
    InputStreamReader类可以指定字符编码格式
    Reader类的子类InputStreamReader常用的构造方法
    new InputStreamReader(InputStream in)
    new InputStreamReader(InputStream in,String charSetName)
    传入的是字节输入流对象,所以使用前要创建FileInputStream对象
    charsetName指定的编码格式
    FileReader类不可以指定字符编码格式,按照文件系统默认编码格式去读
    InputStreamReader类的子类FileReader的构造方法
    new FileReader(File file)
    new FileReader(String pathname)
     
    中文乱码
    原因:文件编码格式  和  程序环境的编码格式不一致
     
    解决方案: 字符流去读的时候,指定字符流的编码格式
     
    System.out.println(System.getProperty("file.encoding"))(获得本地平台的字符编码类型)
    txt文本的编码格式是ANSI(GBK)
     
    缓冲流:
    BufferedReader类
    Reader类的子类BufferedReader类使用BufferedReader要传入Reader对象,所以使用前要先创建Reader对象
    readLine()
     
     
    字符输出流(写)
    Writer类抽象类
    Writer类的常用方法
    writer(String str)
    writer(String str,int off,int len)
    void close()
    void flush() 清空缓存
    OutputStreamWriter类可以指定字符编码格式
    Writer类的子类OutputStreamWriter类常用的构造方法
    new OutputStreamWriter(OutputStream out)
    new OutputStreamWriter(OutputStream out,String charSetName)
    charsetName指定的编码格式
    FileWriter类不可以指定字符编码格式,会按照文件系统默认编码格式去写
    InputStreamWriter类的子类FileWriter的构造方法:以下两种构造,都可以重载,指定一个boolean类型的参数,用来指定追加还是覆盖文件内容
    new FileWriter(File file)
    new FileWriter(String pathname)
     
    缓冲流:
    BufferedWeiter类
    Writer类的子类BufferedWriter类常用的构造方法
    new BufferedWriter(Writer out)
     
    newLine() 创建新的一行
     

  • 相关阅读:
    友盟页面统计
    为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment?
    让jQuery的ajaxFileUpload插件支持onchange事件
    sublime双击选择全选带中划线
    配置Chrome Workspace功能
    font-face 跨域解决
    Yahoo团队经验:网站性能优化的34条黄金法则
    require.js+knockout.js+.underscore模板引擎的使用
    使用livereload实现自动刷新
    WebStorm 7.0 支持更多的Web技术
  • 原文地址:https://www.cnblogs.com/KiligYou/p/10978851.html
Copyright © 2020-2023  润新知