//对一个文件进行分割(例如音乐文件),把一个文件分割成N份
package cn.itcast.day17.exercise;import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class Exercise8 {
public static void main(String[] args) throws IOException {
File file = new File("Buring.mp3");
split(file);
}
public static void split(File file) throws IOException{
File dir = new File(".temp");
dir.mkdir();
// 计算每一份的大小
long partLen = (file.length() + 4) / 5; // (10 + 4) / 5 = 2, (14 + 4) / 5 = 3
int fileNum = 1;
long len = 0;
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File(dir, fileNum + "")));
int b;
while((b = bis.read()) != -1) {
if(len++ == partLen){
bos.close();
bos = new BufferedOutputStream(new FileOutputStream(new File(dir, ++fileNum + "")));
len = 0;
}
bos.write(b);
}
bis.close();
bos.close();
System.out.println(file.delete());
dir.renameTo(file);
}}
一个使用java File类分割文件的方法
最新推荐文章于 2021-03-20 01:45:36 发布