我是IO流,我是无情的输出机器!

97 阅读2分钟

IO流

在这里插入图片描述

IO流概述

java Io流共涉及40多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在非常紧密的联系, Java Io流的40多个类都是从如下4个抽象类基类中派生出来的。

InputStream/Reader: 所有的输入流的基类,前者是字节输入流,后者是字符输入流。
OutputStream/Writer: 所有输出流的基类,前者是字节输出流,后者是字符输出流。
/**
     * IO流概述
     *  可以将这种数据传输操作,看做一种数据的流动 , 按照流动的方向分为输入Input和输出Output
     *  Java中的IO操作主要指的是 java.io包下的一些常用类的使用. 通过这些常用类对数据进行读取(输入Input) 和 写出(输出Output)
     *
     * IO流的分类:
     *  按照流的方向来分,可以分为:输入流和输出流.
     *  按照流动的数据类型来分,可以分为:字节流和字符流
     *
     *     字节流:
     *          -   输入流 :   InputStream
     *          -   输出流 :   OutputStream
     *     字符流:
     *          -   输入流 :   Reader
     *          -   输出流 :   Writer
     *
     *
     * 一切皆字节:
     *      计算机中的任何数据(文本,图片,视频,音乐等等)都是以二进制的形式存储的.
     *      在数据传输时 也都是以二进制的形式存储的.
     *      后续学习的任何流 , 在传输时底层都是二进制.
     * @param args
     */

IO流的分类

  • 根据处理数据类型的不同分为:字符流和字节流
  • 根据数据流向不同分为:输入流和输出流 在这里插入图片描述

字节流

传送带:字节流

字符流

传送带:字符流

字节转字符流

package work.february.two.daily;

import java.io.*;

/**
 * @Author: 小浪
 * @Description:
 * @Date Created in 2021-02-02 20:37
 * @Modified By:
 */
public class Demo11 {
    public static void main(String[] args) throws IOException {
        //转化流 字节转字符
        FileInputStream fileInputStream =new FileInputStream("D://d.txt");
        InputStreamReader inputStreamReader =new InputStreamReader(fileInputStream,"utf-8");
        while (true){
            int c = inputStreamReader.read();
            if(c==-1){
                break;
            }
            System.out.println((char)c);

        }

    }
}

package work.february.two.daily;

import java.io.*;

/**
 * @Author: 小浪
 * @Description:
 * @Date Created in 2021-02-02 20:44
 * @Modified By:
 */
public class Demo12 {
    public static void main(String[] args) throws IOException {
        FileOutputStream fileOutputStream =new FileOutputStream("D://c.txt");
        OutputStreamWriter outputStreamWriter =new OutputStreamWriter(fileOutputStream);
        outputStreamWriter.write("场子要货");
        outputStreamWriter.flush();
        outputStreamWriter.close();
    }
}

在这里插入图片描述

废话时间:

如果客官觉得食用合适可不可以给一个免费的赞!谢谢谢了!慢走客官!建议打包收藏,下次再来。店小二QQ:309021573,欢迎骚扰!