/*
切割一个文件
运用合并流将几个文件合并到一个文件
*/
import java.util.*;
import java.io.*;
class SequenceInputStreamDemo
{
public static void main(String[] args) throws IOException
{
//qiege();
//hebing();
}
public static void qiege()throws IOException
{
BufferedInputStream bi=new BufferedInputStream(new FileInputStream("D:\\aa\\day20\\新建文件夹\\1.mp3"));
BufferedOutputStream bo;
int num=0,count=1;
byte[] arr=new byte[1024*1024];
while((num=bi.read(arr))!=-1)
{
bo=new BufferedOutputStream(new FileOutputStream("D:\\aa\\day20\\新建文件夹\\"+(count++)+".part"));
bo.write(arr,0,num);
bo.close();
}
bi.close();
}
public static void hebing()throws IOException
{
FileInputStream f1=new FileInputStream("D:\\aa\\day20\\新建文件夹\\1.part");
FileInputStream f2=new FileInputStream("D:\\aa\\day20\\新建文件夹\\2.part");
FileInputStream f3=new FileInputStream("D:\\aa\\day20\\新建文件夹\\3.part");
FileInputStream f4=new FileInputStream("D:\\aa\\day20\\新建文件夹\\4.part");
FileInputStream f5=new FileInputStream("D:\\aa\\day20\\新建文件夹\\5.part");
Vector<FileInputStream> v=new Vector<FileInputStream>();
v.add(f1);
v.add(f2);
v.add(f3);
v.add(f4);
v.add(f5);
Enumeration<FileInputStream> e=v.elements();
SequenceInputStream si=new SequenceInputStream(e);
BufferedOutputStream bo1=new BufferedOutputStream(new FileOutputStream("D:\\aa\\day20\\新建文件夹\\2.mp3"));
int num=0;
byte[] arr1=new byte[1024*1024];
while((num=si.read(arr1))!=-1)
{
bo1.write(arr1,0,num);
System.out.println(num);
bo1.flush();
}
bo1.close();
si.close();
}
}
|