JAVA——缓冲流(DataOutputStream 和DataInputStream)

package com.cskaoyan.otherstream;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * @author zhangshuai@Cskaoyan.onaliyun.com.
 * @version 1.0
 *
 * 通过字节流和字符流的学习,我们已经可以完成许多I/O的工作了,但是这就够了吗?

      思考如下问题,如果我要向文本文件中写入一个整数怎么办?
      字节流行吗?字符流呢?

      Java中有专门操作基本数据类型的流:
      DataInputStream
      DataOutputStream

     如果,向流中写入一个整数
     int a = 2000455;

 */
public class Demo1Data {

  public static void main(String[] args) throws IOException {
    // 如果,要想将一个int整数值通过流写入外部设备, 非常麻烦,
    // 因为write(int)一次只能写入一个int类型数据的低8位
//    int a = 2000455;
//    FileOutputStream fos = new FileOutputStream("a.txt");
//    fos.write(a);


    // 我们可以利用DataOutputStream,将基本数据类型的值,写入流,从而写入外部设备
    // 我们可以利用DataInputStream,将基本数据类型的值,从外部设备读取到内存

    int a = 2000455;
    DataOutputStream dataOut = new DataOutputStream(new FileOutputStream("a.txt"));
    dataOut.writeInt(a);
    //dataOut.close();
//
    DataInputStream dataInputStream = new DataInputStream(new FileInputStream("a.txt"));
    int i = dataInputStream.readInt();
    System.out.println(i); //2000455


  }

}

  

posted @ 2020-09-02 20:25  LY心情笔记  阅读(274)  评论(0)    收藏  举报