Io转换流

Io转换流:

就是字节流和字符流的相互转换,由于我们在传输文件时,不知道你具体想要传递什么文件,这时候人家一般会丢给你一个字节流接口,

如果你想使用字符,这时候就需要字节和字符相互转换即可。

  • OutputStreamWriter:可以将字节输出流转换为字符输出流
  • InputStreamReader: 可以将字节输入流转换为字符输入流

字节输出流转换字符输出流

public class Test6 {
    public static void main(String[] args) {
        try {
            write(new FileOutputStream("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt"));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }

    private static void write(OutputStream out) {
        Writer writer = new OutputStreamWriter(out);
        try {
            writer.write("即使再小的帆也能远航");
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

字节输入流转换字符输入流

public class Test6 {
    public static void main(String[] args) {
        try {
            out(new FileInputStream("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt"));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
    private static void out(InputStream in) {
        Reader reader = new InputStreamReader(in);
        char[] chars = new char[1];
        int len = -1;
        try {
            while ((len = reader.read(chars)) != -1) {
                System.out.print(new String(chars, 0, len));
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
posted @ 2021-07-08 16:20  JamieChyi  阅读(32)  评论(0)    收藏  举报  来源