大文件在传输时不太方面处理,为了便于携带,我们可以实现对大文件进行分割成若干个小文件,这样方便于携带,本实例通过输入流读取分割的文件,再分别从流中读取相应的字节,将其写入到文件中,通过FileInputStream类的read()方法可以实现读取文件。
- 创建工具类,在该类中编写实现大文件分割方法,关键代码如下:
public class SplitUtil {
//commFile分割文件地址的地址,untiFile分割后文件保存地址,filesize分割文件大小
public static boolean splitFile(File commFile,File untiFile,int filesize){
FileInputStream fis=null;
int size=10241024;//用来指定分割文件要以MB为单位
boolean d=false;
try {
if (!untiFile.isDirectory()) {//如果要保存的分割文件地址不是路径
untiFile.mkdir();//创建该路径
}
size=size * filesize;
int length=(int) commFile.length();//获取文件大小
int num=length/size;//获取文件大小除以MB的数
int yu=length%size;//获取文件大小与MB相除的余数
//获取保存文件的完整路径信息
String newfengeFile=commFile.getAbsolutePath();
int fileNew=newfengeFile.lastIndexOf(".");