---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
import java.io.*;
import java.util.*;
class SplitFile
{
public static void main(String[] args) throws IOException
{
//splitFile();
merge();
}
public static void merge() throws IOException //合并被分割的数据
{
//
ArrayList<FileInputStream> a1 = new ArrayList<FileInputStream>();
for(int x=1;x<=1;x++)
{
a1.add(new FileInputStream("E:\\Java源代码\\IO基础\\day20\\splitfiles\\"+x+".part"));
}
final Iterator<FileInputStream> it = a1.iterator();
Enumeration<FileInputStream> en = new Enumeration<FileInputStream>() //因为这个是匿名内部类对访问的局部变量用final修饰
{
public boolean hasMoreElements()
{
return it.hasNext();
}
public FileInputStream nextElement()
{
return it.next();
}
};
SequenceInputStream sis = new SequenceInputStream(en);
FileOutputStream fos = new FileOutputStream("E:\\Java源代码\\IO基础\\day20\\splitfiles\\1.jpg");
byte[] buf = new byte[1024];
int len =0;
while((len = sis.read(buf))!=-1)
{
fos.write(buf,0,len);
}
fos.close();
sis.close();
}
public static void splitFile() throws IOException
{
FileInputStream fis = new FileInputStream("E:\\Java源代码\\IO基础\\day20\\1.JPG");
FileOutputStream fos = null;
byte[] buf = new byte[1024*1024];
int len = 0;
int count=1;
while((len=fis.read(buf))!=-1)
{
fos = new FileOutputStream("E:\\Java源代码\\IO基础\\day20\\splitfiles\\"+count+".part");
count++;
fos.write(buf,0,len);
fos.close();
}
fis.close();
}
}
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------详细请查看:http://edu.youkuaiyun.com