您的位置:首页 > 其它

文件分割器,一个读取流,相应多个输出流,并且生成的碎片文件都有有序的编号

2016-04-15 21:19 267 查看
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

public class FileSpilte {

/**
* @param args
* @throws IOException
*/
/*
* 文件分割器,
* 一个读取流,相应多个输出流。并且生成的碎片文件都有有序的编号
*/
public static void main(String[] args) throws IOException {

File destdir = new File("teampFile\\filepart");
File file = new File("E:\\A-Lin - 给我一个理由忘记.mp3");

fileSplite(file,destdir);
}

private static void fileSplite(File file, File destdir) throws IOException {

if(!file.exists()){
throw new RuntimeException(destdir+"文件不存在");
}

if(!destdir.exists())
{
destdir.mkdirs();
}
FileInputStream fis = new FileInputStream(file);

FileOutputStream fos = null;

byte[] buf =new byte[1024*1024];
int count = 0;
int len = 0;

while((len=fis.read(buf))!=-1){
File partfile = new File(destdir,(++count)+".part");
fos = new FileOutputStream(partfile);
fos.write(buf,0,len);
fos.close();
}
Properties prop =new Properties();
prop.setProperty("partcount",Integer.toString(count));
prop.setProperty("filename", file.getName());

File profile = new File(destdir,(++count)+".properties");
fos=new FileOutputStream(profile);
prop.store(fos, "save");

fos.close();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: