zoukankan      html  css  js  c++  java
  • java学习day14--API-转换流

    转换流

    用来作为桥梁,把字节流转成字符流的桥梁。

    用来解决字符流读写乱码问题。

    工具类

    OutputStreamWriter

    是字节流通向字符流的桥梁

    构造方法

    OutputStreamWriter(OutputStream out, String charsetName)
    
    OutputStreamWriter(OutputStream out)  
    

    InputStreamReader

    是字节流通向字符流的桥梁

    构造方法

    InputStreamReader(InputStream in)
    
    InputStreamReader(InputStream in, String charsetName)
    

    字符编码表

    字符编码表

    测试案例

    //编码转换流的测试
    public class Test5_Decode {
        public static void main(String[] args) {
    //     method();//输出的转换流
           method2();//读取的转换流
        }
        private static void method2() {
    
           try {
               //1,创建转换对象
               //第二个参数可以设置编码表,解决乱码现象
               //文件保存时使用的是gbk编码,如果用utf-8就会乱码
    //         BufferedReader in = new BufferedReader(
    //                      new InputStreamReader(
    //                      new FileInputStream("1.txt"),"utf-8"));//乱码
               BufferedReader in = new BufferedReader(
                      new InputStreamReader(
                             new FileInputStream("1.txt"),"gbk"));
               //2,读取一行数据
               String line = in.readLine();//子类BufferedReader的特有方法
               System.out.println(line);
               //3,释放资源
    			in.close();
           }catch(Exception e) {
               e.printStackTrace();
           }
        }
        private static void method() {
           try {
               // 1,创建转换流输出对象,OutputStreamWriter是字节流通向字符流的桥梁
               //第二个参数可以设置编码表,解决乱码现象
               //写出去的文件如果使用了utf-8表,打开时,使用了默认的gbk编码表,就会出现乱码
    //         OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream("1.txt"), "utf-8");
               OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream("1.txt"), "gbk");
               // 2,开始写出数据
               // 当数据的保存方式和打开方式,使用的不是一张表时,就会出现乱码!!
               out.write("大家好,我是渣渣辉");
               // TODO 3,释放资源
               out.flush(); 
           } catch (Exception e) {
               e.printStackTrace();
           }
        }
    }
    
  • 相关阅读:
    Linux命令——tac、rev
    Linux命令——pr
    Linux命令——column
    【问题】显示每个用户近期登陆系统次数
    Git分支
    如何使用Systemctl管理系统服务和单元?
    IPTables 和 Netfilter 框架
    Nginx安装及配置
    WMware Workstation——时间和时区问题
    WMware Workstation——网络类型:NAT、bridge、host-only
  • 原文地址:https://www.cnblogs.com/liqbk/p/12919011.html
Copyright © 2011-2022 走看看