• 【转载】JAVA中IO流操作的基本规律总结


    流操作的基本规律:三个明确
    1.明确源和目的;
    源:输入流即读取流       InputStream,Reader
    目的:输出流即写入流    OutputStream, Writer
    2.明确操作的数据是否是纯文本文件;
    如是果是纯文本文件使用字符流Reader 或Writer,不是纯文本文件 使用字节流InputStream或 OutputStream
    3.当体系明确后,在明确具体的适用对象;
    通过设备来区分
    源设备:内存  硬盘  键盘
    目的设备:内存  硬盘   控制台 
    ***************************************************************************************************
    eg1:将一个文本文件的数据复制到另一个文件
    分析开始:
    源是一个文本文件所以使用字符流,因为要读取区其中的数据,选择Reader
    接下来明确使用对象,设备是硬盘上的文件,Reader体系中操作文件的对象时FileReader
          FileReader fr=new FileReader("a.txt");
    为了提高读取效率,加入Reader体系之中的缓冲区BufferedReader(装饰类)
    BufferedReader br=new BufferedReader(fr);
    目的:也是一个文件,因为要向其中写入数据,选择Writer
    因为该文件也存在与硬盘之上,所以使用Writer体系中操作文件的对象FileWriter
    FileWriter fw=new FileWriter("b.txt");
    同理,为了提高读取效率,加入 Writer 体系之中的缓冲区BufferedWriter
    Buffered Writer  br=new Buffered Writer r(fw);
    若是图片、音频或是视频文件,分析步骤同上,改成相应的字节流即可。
    ********************************************************************************************************
    eg2:将键盘录入的数据保存到文件当中
    分析:源是键盘录入( InputStream,Reader),是纯文本(Reader);
    设备:键盘,对应的对象System.in
    由于体系是Reader,而System是字节流(InputStream),所以要转成字符流,利用Reader体系中的字节转字符的桥梁:InputStreamReader
    InputStreamReader isr=new InputStreamReader(System.in);
    为了提高效率,使用BufferedReader
    BufferedReader br=new BufferedReader(isr); 
    目的:也是文本文件,Writer
    设备:硬盘上的文件,使用对象FileWriter
    FileWriter fw=new FileWriter("a.txt");
    同样为了提高效率:Buffered Writer  br=new Buffered Writer r(fw);
    如果要将文本中的文件输出到控制台,按照上面的三个明确即可。
     
    原文博客:http://blog.csdn.net/u012355386/article/details/22697155
    浅显易懂,非常好用
  • 相关阅读:
    命令拷屏之网络工具
    PHP 设计模式 笔记与总结(1)命名空间 与 类的自动载入
    Java实现 计蒜客 1251 仙岛求药
    Java实现 计蒜客 1251 仙岛求药
    Java实现 计蒜客 1251 仙岛求药
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 LeetCode 143 重排链表
    Java实现 LeetCode 143 重排链表
  • 原文地址:https://www.cnblogs.com/ViokingJava/p/8184396.html
Copyright © 2020-2023  润新知