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
}
}