zoukankan      html  css  js  c++  java
  • Java基础知识总结之IO流

    理解Java的IO流

    流(Stream)的概念:程序与数据来源之间的桥梁

    流的分类      

    按流的方向来分(从程序所在的内存的角度来看):  

    •   输入流:把外部输入读入当前程序所在内。  
    •   输出流:把当前程序所在内存的数据输出到外部       

    按流处理得数据来分:  

    •    字节流:它处理数据单元是字节(8bit),适应性广、功能强大。  
    •    字符流:它处理的数据单元是字符。通常来说它主要处理文本文件,   它在处理文本文件时,比字节流更方便。  

    字节流和字符流的区别:

    读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节。

    处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。

    结论:只要是处理纯文本数据,就优先考虑使用字符流。 除此之外都使用字节流。

    按流的角色来分:  

    •   节点流:直接和一个IO的物理节点(磁盘上的文件、网络)关联。  
    •   包装流(处理流):以节点为基础,包装之后得到的流。都继承FilterXxx等基类。

    IO体系

    Java传统IO的基本体系:                

          字节输入流                   字节输出流                   字符输入流          字符输出流                

          InputSteam                OutputStream                 Reader              Writer

    访问文件  FileXxx

    访问数组  ByteArrayXxx              CharArrayXxx

    访问管道  PipedXxx

    访问字符串  StringXxx

    过滤流     FileterInputStream      FileterOutputStream     FileterReader      FilterWriter

    缓冲流     BufferedXxx

    打印流               PrintStream                 PrintWriter

    转换流                          InputStreamReader    OutputStreamWriter

    特殊流  DataInputStream         DataOutputStream            

    对象流  ObjectInputStream      ObjectOutputStream

     

    对象序列化的相关知识链接:

     

  • 相关阅读:
    PC远程调试设备(转)
    根据自己的需要,把别人开发好的东西搬过来,优化and重构,在优化的过程中,甚至也会弄出一套全新的东西(转)
    修改Hosts不生效的一个场景-web 专题
    Data URI(转)
    数据仓库与数据挖掘的一些基本概念
    几种常见模式识别算法整理和总结
    史上最简单的Hibernate入门简单介绍
    sprintf,你知道多少?
    一步一步写算法(之洗牌算法)
    ListView的优化
  • 原文地址:https://www.cnblogs.com/changyaohua/p/4669601.html
Copyright © 2011-2022 走看看