• I/O流


    以程序为中心
    1、按照流向:输入流、输出流

    2、按操作数据:
    字节流:二进制,可以是任何类型的文件
    字符流:必须是纯文本类型

    3、按照功能
    节点流:包裹源头
    处理流:增强功能

    字节流与字符流
    1、字节流
    输入流:InputStream
    FileInputStream
    输出流:OutputStream
    FileOutputStream

    2、字符流
    输入流:Reader
    FileReader
    输出流;Writer
    FileWriter

    3、缓冲流
    字节缓冲流:BufferdInputStream
    BufferdOutputStream
    字符缓冲流:BufferdReader
    BufferdWriter

    以程序为中心,文件读写流程:
    1、与文件建立联系,创建文件
    2、选择合适的流:纯文本文件建议使用BufferdReader、BufferdWriter。其他类型文件使用BufferdInputStream、BufferdOutputStream
    3、读取流到字节数组中。
    4、输出字节数组中的数据。
    5、关闭输入流、输出流。

    乱码造成原因
    1、编解码不一致
    2、字节缺少,长度丢失
    解码:字节 ====> 字符(由FileInputStream创建InputStreamReader可以设置解码字符集)
    编码:字符 ====> 字节

    对象序列化与反序列化
    序列化:输出流(ObjectOutputStream),将程序中对象写入到文件。
    反序列化:输入流(ObjectInputStream),从文件中读取对象到程序中。

    —转载请注明出处
  • 相关阅读:
    js中Frame框架的属性获取(1)
    c#中文件上传(1)
    表单验证Validform
    Mybatis语法笔记
    js的checkbox
    调用微信Js-SDK支付
    调用微信Js-SDK图片
    java后台上传到linux
    web服务器内层溢出
    SpringMVC
  • 原文地址:https://www.cnblogs.com/landiss/p/14206864.html
Copyright © 2020-2023  润新知