java20

这篇博客详细探讨了Java中的IO流,包括合并流SequenceInputStream的使用,如何处理不同类型的文件合并,以及双向流RandomAccessFile的操作。此外,还深入讲解了对象的序列化与反序列化机制,强调了序列化接口Serializable的重要性和transient关键字的作用。最后提到了加载配置文件、单元测试Junit的基本操作以及使用assert进行程序结果的预测性判断。
摘要由CSDN通过智能技术生成

java20

IO流

打印流
底层提供打印或者打印换行功能(打印就是写出)

System.out以及System.err都是打印流的对象

演示

	public static void main(String[] args) throws IOException {
	
//	打印流
	PrintStream  ps = new PrintStream("E:\\asd.txt");
//	写数据
	ps.write("wqeqwe".getBytes());
//	打印到具体的位置--写出
	ps.print(456123);
//	多了换行功能    
	 ps.println(456123);
	 ps.println(456123); 
	 
	 
}

合并流—SequenceInputStream

需要提供多个输入流对象,存储在Vector集合对象中,获取Enumeratio对象

最后构建成合并流对象, 合并–就是把所有的输入流的数据进行统一读取,注意输

入流的数据进行统一读取,注意输入流的编码,以及各式。

通过java合并视频—也可以合成其他类型文件例如txt,MP3等

不过没有后期处理可能会出现不可预料的问题

两个不同类型的文件也可以并流例如MP4文件与txt文件合并,但是若不妥善处理

也会出现乱码。

	import java.io.FileInputStream;
	import java.io.FileNotFoundException;
	import java.io.FileOutputStream;
	import java.io.IOException;
	import java.io.SequenceInputStream;
	import java.util.Enumeration;
import java.util.Vector;

	public class hebing {
	public static void main(String[] args) throws IOException {
//	提供输入流---提供待合并的数据
	FileInputStream in = new FileInputStream("E:\\1.mp4");
	FileInputStream in2 = new FileInputStream("E:\\2.mp4");
	FileInputStream in3 = new FileInputStream("E:\\3.mp4");
//	把输入流对象添加到集合中
	Vector<FileInputStream> v = new Vector<>();
	v.add(in);
	v.add(in2);
	v.add(in3);
//	获取到Enumeration类型
//	把集合中的所有输入流对象存
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值