zoukankan      html  css  js  c++  java
  • java IO流 内容整理

    在java中,对数据的输入和输出操作以流的方式进行。(注:对文件的操作用io.File类,但不能对文件中的内容进行操作)

    一、IO流的分类:

    按数据流的方向不同,可以分为输入流输出流

    按处理数据的单位不同,可以分为字节流字符流

    按功能不同,可以分为节点流处理流

    二、J2SDK所提供的所有流类型位于java.io包,都分别继承自以下四种抽象流类型:

    注:以上是四个抽象类

    java输入输出流是站在程序的角度来说的

      从文件中读取数据用输入流,向文件中写数据用输出流。

    字节流:单位是字节(8Bit),

    字符流:单位是字符(16Bit),

      可以一次写入或读取一个汉字,不会像字节流处理时会有乱码。因为java采用的是Unicode编码,一个字符等于2个字节。

    节点流:直接就可以操作数据源

               

    处理流:需要套接在节点流上才能操作数据,不能直接操作数据源

              

       1. 缓冲流,要套接在相应的节点流之上,对读写的数据提供了缓冲的功能,提高了读写的效率,同时增加了一些新的方法。

                BufferedReader提供了readLine方法用于读取一行字符串,BufferedWriter提供了newLine用于写入一个行分隔符。

                对于输出的缓冲流,写出的数据会先在内存中缓存,使用flush方法将会使内存中的数据立刻写出。

                BufferedReader(Reader in);

                BufferedOutputStream(OutputStream out);

      2. 转换流,用于字节数据到字符数据之间的转换。

               InputStreamReader需要和InputStream套接,OutputStreamWriter需要和OutputStream套接。

               转换流在构造时,可以指定其编码集合,例如:

               InputStreamReader ipr = new InputStreamReader(System.in,"ISO8859_1");

      3. 数据流,提供了可以存取与机器无关的Java原始数据类型(如:int,long,double等)的方法:

               如:readBoolean(); readByte();readChar();writeInt(int i);writeLong(long v) ... 

               DataInputStrem(InputStream in);

               DataOutputStream(OutputStream out);

      4. Print流,只有输出流,提供了重载的print、println方法用于多种数据类型的输出(我们经常用到的System.out.print()其中out字段的类型就是PrintStream):

          print(char c) 、print(double d) 、print(int i) 、

               PrintWriter和PrintStream的输出操作不会抛出异常,有自动flush功能。

               该流也可以用于写日志。

      5. Object流,直接写入或读取一个Object中所有的内容,包括变量和方法,但是该类必须先序列化,即implements Serializable接口,

               如果这个类中某个成员变量不想被序列化,需要用transient关键字修饰。

               writeObject(Object obj) 

              

  • 相关阅读:
    Singing Everywhere ZOJ
    CONTINUE...? ZOJ
    Doki Doki Literature Club ZOJ
    数论证明链接整理
    ACM数学(转)
    codeforce 1152C. Neko does Maths(欧几里得算法)
    八数码问题判定是否解的证明
    sql给表取别名
    win10激活方法
    HDU1121 Complete the Sequence(差分找规律)
  • 原文地址:https://www.cnblogs.com/janson071/p/10055122.html
Copyright © 2011-2022 走看看