JAVA之IO技术 合并文件--有bug哦
2021/6/3 20:21:31
本文主要是介绍JAVA之IO技术 合并文件--有bug哦,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
/*将三个文本文件的内容copy到一个文件中。 * 基本思路:通过续写的方式。 * * JAVA之IO技术中提供了一个可串联的字节输入流对象。 * * 合并流对象 * SequenceInputStream: * SequenceInputStream 表示其他输入流的逻辑串联。 * 它从输入流的有序集合开始,并从第一个输入流开始读取, * 直到到达文件末尾,接着从第二个输入流读取,依次类推, * 直到到达包含的最后一个输入流的文件末尾为止。 * 有两个构造函数: * SequenceInputStream(InputStream s1, InputStream s2) :针对于两个字节流对象的操作 * SequenceInputStream(Enumeration<? extends InputStream> e) : * 针对于多个字节流对象的操作。 */ package ioTest.io3; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.SequenceInputStream; import java.util.Enumeration; import java.util.Vector; public class SequenceInputStreamDemo { public static void main(String[] args) throws IOException { //下面的构造函数需要传一个下面类型的参数,如何做------------------? /*Enumeration<InputStream> enum =new Enumeration<E>() { }; */ Vector<InputStream> vector=new Vector<InputStream>(); try { vector.add(new FileInputStream(new File("F:\\1.txt"))); vector.add(new FileInputStream(new File("F:\\2.txt"))); vector.add(new FileInputStream(new File("F:\\3.txt"))); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } Enumeration<InputStream> en=vector.elements(); //创建一个合并流对象-将源整合到流中 SequenceInputStream sis=new SequenceInputStream(en); //目的地 FileOutputStream outputStream=new FileOutputStream(new File("F:\\4.txt")); byte[] buf=new byte[1024]; int len=0; while((len=sis.read(buf))>0) { outputStream.write(buf, 0, len); } sis.close(); outputStream.close(); } //--------为什么最后新生成的文件,文件的内容没有换行了? }
这篇关于JAVA之IO技术 合并文件--有bug哦的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器
- 2024-11-26Java云原生资料:新手入门教程与实战指南
- 2024-11-26JAVA云原生资料入门教程
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程