`

黑马程序员23-5:FileInputStream文件输入流,SequenceInputStream,Enumeration将多个文件输出到同一个文件中

 
阅读更多
黑马程序员23-5:FileInputStream文件输入流,Enumeration将多个文件输出到同一个文件中,顺序流SequenceInputStream

------- android培训 java培训、期待与您交流!-------



package cn.itcast.io.p4.sequence.demo;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.SequenceInputStream;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
import java.util.Iterator;

public class SequenceInputStreamDemo {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {

		
		/*
		 * 需求:将1.txt 2.txt 3.txt文件中的数据合并到一个文件中。
		 */
		
//		Vector<FileInputStream> v = new Vector<FileInputStream>();		
//		v.add(new FileInputStream("1.txt"));
//		v.add(new FileInputStream("2.txt"));
//		v.add(new FileInputStream("3.txt"));
//		Enumeration<FileInputStream> en = v.elements();
		
		ArrayList<FileInputStream> al = new ArrayList<FileInputStream>();
		for(int x=1; x<=3; x++){
			al.add(new FileInputStream(x+".txt"));
		}
		//枚举文件输入流,Collections工具
		Enumeration<FileInputStream> en = Collections.enumeration(al);
		
		
		
		/*
		final Iterator<FileInputStream> it = al.iterator();
		Enumeration<FileInputStream> en = new Enumeration<FileInputStream>(){

			@Override
			public boolean hasMoreElements() {
				
				return it.hasNext();
			}

			@Override
			public FileInputStream nextElement() {
				
				return it.next();
			}
			
		};*/
		//顺序流
		SequenceInputStream sis = new SequenceInputStream(en);
		
		FileOutputStream fos = new FileOutputStream("1234.txt");
		
		byte[] buf = new byte[1024];
		
		int len = 0;
		
		while((len=sis.read(buf))!=-1){
			fos.write(buf,0,len);
		}
		
		fos.close();
		sis.close();
		
	}

}



------- android培训 java培训、期待与您交流!-------


详细请查看:http://edu.csdn.net/heima -------
分享到:
评论

相关推荐

    IO体系.java

    将多个读取流合并成一个读取流,可以方便操作多个读取流。原理(迭代器)。 OutputStream |--FileOutputStream/:文件输出流。用于将写入File和FileDescriptor的输出流。用来操作图像,声音,视频等原始字节流。 ...

    java IO章节的总结

    4)SequenceInputStream:这个类可以将几个输入流串联在一起合并为一个输入流,构造函数有: SequenceInputStream(Enumeration e)枚举类型e中包含了若干个要被串联的输入流 SequenceInputStream(InputStream s1, ...

    FileInputStream的用法1---马克-to-win java视频

    FileInputStream的用法1---马克-to-win java视频文件输入流

    深刻理解java io

    5) SequenceInputStream:把多个InputStream合并为一个InputStream 2) Out stream 1) ByteArrayOutputStream:把信息存入内存中的一个缓冲区中 2) FileOutputStream:把信息存入文件中 3) PipedOutputStream:实现...

    Java计算文件MD5值(支持大文件)

    * 获取一个文件的md5值(可处理大文件) * @return md5 value */ public static String getMD5(File file) { FileInputStream fileInputStream = null; try { MessageDigest MD5 = MessageDigest....

    服务器下载文件

    System.out.println("--输入流--:"+fis); System.out.println("----"); System.out.println("--------"); file_unique = new String(file_unique.getBytes(), "ISO-8859-1"); System.out.println("--下载文件...

    Android项目设计与开发:基本文件存储.ppt

    基本文件存储 创建一个文件(写操作): openFileOutput() 写操作文件打开方式 FileOutputStream 安卓文件输出流 读取文件内容 openFileInput() 读操作文件打开方式 FileInputStream 安卓文件输入流 实验 有序广播...

    Java Zip算法压缩多个文件的例子.rar

    Java Zip算法压缩多个文件的例子,具体的实现原理是:先打开文件并读取,然后利用ZipEntry实例化待压缩的条目列表,将ZIP条目列表写入输出流,从源文件得到文件输入流,写入缓冲数据等。相关代码:  ...

    FileInputStream的用法2---马克-to-win java视频

    FileInputStream的用法2---马克-to-win java视频文件输入流的介绍

    JAVA IO流缓冲字节流缓冲字符流等流经典代码示例加注释总结.rar

    2、常用21个IO流:FileWriter、FileReader、CharArrayReader、CharArrayWriter、CharSequence、OutputStreamWriter、FileOutputStream、InputStreamReader、PrintWriter、BufferedReader、InputStream、...

    Java从文件中读取数字证书.rar

    Java生成 数字证书源码,从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂,获取证书,请查看以下相关代码:  //生成文件输入流,输入文件为c:/mycert.cer  ...

    编写一个java应用程序将一个包含多个子目录和文件的目录复制到另外一个指定的目录下

    编写一个java应用程序,将一个包含多个子目录和文件的目录复制到另外一个指定的目录下。 实验要求 1)欲复制的目录中包含的文件数和子目录层次未知,必须在程序执行时获得这些信息。 2)显示欲复制的目录的...

    Java压缩带有中文名的文件.rar

    Java压缩中文名的文件,大家都知道Java处理英文名的文件很强大,但是处理起中文名那可是比较麻烦了,需要经过很多步骤,这个例子可以告诉你如何简易的处理中文文件名的文件,以压缩中文文件名的文件为例。...

    JAVA文件传输的实现.rar

    文件流操作:使用Java的文件输入输出流(FileInputStream、FileOutputStream)读取和写入文件内容。 多线程处理:通过多线程实现并发处理多个文件传输请求,提高传输效率。 异常处理:处理网络异常、文件读写异常等...

    Java之IO流学习总结

    SequenceInputStream 可以认为是一个工具类,将两个或者多个输入流当成一个输入流依次读取。完全可以从IO 包中去除,还完全不影响IO 包的结构,却让其更“纯洁”――纯洁的Decorator 模式。 PrintStream 也可以认为...

    jsonld-java:Java的JSON-LD实现

    JSONLD-Java正在寻找维护者JSONLD-JAVA 这是和的Java实现。...new FileInputStream ( " input.json " );// Read the file into an Object (The type of this object will be a List, Map, String, Boolean

    Java文件输入输出汇总

    Java文件输入输出的方法,FileInputStream,FileOutputStream,InputStreamReader,重定向等。 也可以作为ACM入门的资料~觉得好的话打印一份不错哦~

    Java仿Windows 窗口化复制文件功能.rar

    Java仿Windows 窗口化复制文件功能,  class SelectFileListener implements ActionListener { ... //将读取的字节数组写入目标文件输出流中   }   fin.close(); //关闭输入流   fout.close(); //关闭输出流

    java解析txt

    * 2:获得文件句柄当做是输入一个字节码流,需要对这个输入流进行读取 * 3:读取到输入流后,需要读取生成字节流 * 4:一行一行的输出。readline()。 * 备注:需要考虑的是异常情况 * @param filePath */...

    resource-utils:Java项目的实用程序,用于获取或准备resourcelibdll ..文件,并适应普通的类,可运行的jar,Web容器等

    一个适用于unicode文件的InputStream包装器。 提供此工具是因为某些Unicode文件具有BOM表头,但是java base io读取BOM作为内容,因此该工具可以跳过BOM。 简单用法: FileInputStream fis = new FileInputStream...

Global site tag (gtag.js) - Google Analytics