• Java IO流 要点


    🍎个人主页:亮点的博客
    🍊个人信条:理想如果不向现实做一点点屈服,那么理想也将归于尘土
    🍑刷题专栏:【Java】牛客网刷题
    🥭刷题网站:牛客网 学习的一种有效途径就是刷题,丰富的做题经验可以加深对知识点的理解,推荐一款刷题网站,赶快点击这里注册学习吧👉你的进阶之路!


    IO流要点如下:

    1、各类间的继承关系
    在这里插入图片描述

    2、在Java中使用File类文件本身,可以直接使用此类完成文件的各种操作,如创建、删除等。

    3、RandomAccessFile类可以从指定的位置开始读取信息,但是要求文件中各个数据的保存长度必须固定。

    4、输入/输出流主要分为字节流OutputStreamInputStream)和字符流WriterReader) 两种,但是在传输中以字节流操作较多,字符流在操作时使用到缓冲区,而字节流没有使用到缓冲区。

    5、字节或字符流都是以抽象类的形式定义的,根据其使用的子类不同,输入或输出的位置也不同。

    6、在IO包中可以使用OutputStreamWriterInputStreamReader完成字符流与字节流之间的转换操作。

    7、使用ByteArrayInputStreamByteArrayOutputStream类可以对内存进行输入/输出操作。

    8、在线程之间进行输入/输出通信,主要使用PipedOutputStreamPipedInputStream类。

    9、在IO中输出时最好使用打印流(PrintStreamPrintWriter),这样可以方便地输出各种类型的数据。

    10、System类提供了3个支持IO操作的常量即out、err、in

    • System.out:对应显示器的标准输出。
    • System.err:对应错误打印,一般此信息不希望被用户看到。
    • System.in:对应标准的键盘输入。

    在程序操作中,根据setOut()方法可以修改System.out的输出位置,可以使用setErr() 方法修改System.err的输出位置,也可以使用setln()方法修改System.in的输入位置。

    11、BufferedReader可以直接从缓冲区中读取数据。

    12、使用Scanner类可以方便地进行输入流操作。

    13、数据操作流提供了与平台无关的数据操作,主要使用DataOutputStream DatalnputStream类。

    14、使用合并流(Sequencelnputstream)可以将两个文件的内容进行合并。

    15、如果数据量过大,则可以使用压缩流压缩数据,在Java中支持ZIPJARGZIP 3 种压缩格式。

    16、使用回退流可以将不需要的数据回退到数据缓冲区中以待重新读取。

    17、造成字符乱码的根本原因就在于程序编码与本地编码的不统一。

    18、对象序列化可以将内存中的对象转化为二进制数据,但对象所在的类必须实现 Serializable接口,一个类中的属性如果使用transient关键字声明,则此属性的内容将不会被序列化。

    19、对象的输入/输出主要使用ObjectlnputStreamObjectOutputStream两个类完成。


    和我一起来刷题学习吧!传送门👉牛客网-求职|面试|学习

  • 相关阅读:
    入手云服务器后,你需要做这些事【基于CentOS】
    分组卷积的思想神了
    无人机助力智慧农田除草新模式,基于YOLOv8全系列【n/s/m/l/x】参数模型开发构建无人机航拍场景下的农田杂草检测识别系统
    cnn lstm交通流量预测python语言
    vscode Prettier配置
    Supershell防溯源反制配置
    2022新版PMP考试有哪些变化?
    顶顶通呼叫中心中间件-添加自定义变量到CDR方法(mod_cti基于FreeSWITCH)
    基于matlab的神经网络设计,深度神经网络代码matlab
    map中常见的方法
  • 原文地址:https://blog.csdn.net/CSDN_anhl/article/details/126480328