package test;
import java.io.*;
/*
* 利用 Data 流,完成下面操作:
* (1) 往当前目录下“test.dat”的文件中写入一个 long类型的数值:10000L
* (2) 从该文件中读出数值,并把该数值加 1 之后,再存回文件中。
* */
public class Test19 {
public static void main(String[] args) {
//定义过滤输出字节流属性
ObjectOutputStream out = null;
//定义过滤输入字节属性
ObjectInputStream in =null ;
//try catch 抓住异常
try{
//创建字节输出流对象
OutputStream os = new FileOutputStream("test.dat");
//创建过滤字节输出流对象
// 因为过滤流需要依附于字节流才能完成
//所以将字节输出流对象当做参数传入到过滤流中
out = new ObjectOutputStream(os);
//定义一个long类型的数值
Long g = 10000L ;
//将long类型的变量存入到文件中
//通过 过滤流对象调用输出方法
out.writeObject(g);
//创建输入流对象
InputStream is = new FileInputStream("test.dat");
//创建过滤流对象
//因为过滤流需要依附于字节流才能完成
//所以将输入流对象当做参数传递进入过滤流中
in = new ObjectInputStream(is);
//通过过滤输入流对象调用read()方法 进行读入
Object read = in.readObject();
//进行类型的转换
Long lg = (Long) read;
//将转换之后的数据+1 再次存入文件中
out.writeObject(lg+1);
}catch (Exception e){
e.printStackTrace();
}
//关闭流资源
finally {
try{out.close();}catch (Exception e){e.printStackTrace();}
try{in.close();}catch (Exception e){e.printStackTrace();}
}
}
}
IO练习以及自动关闭流的trycatch
最新推荐文章于 2023-08-31 16:15:50 发布