/*
编程:将一个长整型数据写入字节数组 然后在从字节数组读出来
思路:长整型读和写 readlong,writelong,是个数数据,要用到DataInputStream,DataOutputStream
步骤:
1:将一个长整型数据
2;写入数据写入字节流中
3: 构造函数DataOutputStream 参数是OutputStream 要找OutputStream的子类 实现多态
4: 如何找到字节数组 ByteArrayOutputStream 里有个方法 toByteArray
4: 构造一个数据输出流 DataInputStream DataInputStream(InputStream in) 参数是OutputStream 要找OutputStream的子类 实现多态
5: 包裹流调用自己的读的方法,读出数组中的数据
*/
import java.io.*;
class TestRead
{
public static void main(String[] args) throws Exception
{
//第一步:定义一个长整型
//创建一个新的数据输出流,将数据写入指定基础输出流。构造函数:DataOutputStream(OutputStream out)
//OutputStream 的子类正好有一个写入字节数组ByteArrayOutputStream
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
long n = 12345678;
dos.writeLong(n);
// 字节数组里的内容在缓冲区里,返回一个字节数组,对外字节读
byte[] buf = baos.toByteArray();
ByteArrayInputStream bais = new ByteArrayInputStream(buf);
DataInputStream dis = new DataInputStream(bais);
long m;
m=dis.readLong();
System.out.println(m);
}
}
总结: 学了这么久,这2天才发现,编程偏思想, 不是偏代码,
每一步在脑海里尽量都要有个图, 或者在纸上边画图边写代码.
多多查看API文档, 用到的每个类,类里面大概有什么方法.