有的时候我们想要操作的文件很大,比如:我们想要上传一个大文件,但是受到上传文件大小的限制,无法上传,这时我们可以将一个大的文件分割成若干个小文件进行操作,然后再把小文件还原成源文件。分割后的每个小文件的类型可以自己定义。
以下是我编写的一个大文件的分割和合并的代码:
[java] view plain copy package com.lym; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /** * 1、实现一个文件分割器,把一个大文件分割成若干个小文件(可根据情况自行设计), * 分割后的文件扩展名为dat,文件名为:原文件名+原扩展名+编号+.dat * 2、把分割后的文件再合并(文件还原)成完整文件,与源文件一致。 * @author lym * */ public class Homework2 { /** * 文件分割 * @param src 源文件路径 * @param fileSize 分割后每个文件的大小,单位是MB * @param dest 目标文件路径 */ public static void split(String src,int fileSize,String dest){ if("".equals(src)||src==null||fileSize==0||"".equals(dest)||dest==null){ System.out.println("分割失败"); } File srcFile = new File(src);//源文件 long srcSize = srcFile.length();//源文件的大小 long destSize = 1024*1024*fileSize;//目标文件的大小(分割后每个文件的大小) int number = (int)(srcSize/destSize); number = srcSize