现有一要求,将桌面的一个指定PPT按照大小为1MB进行切割,将切割完的文件及配置文件放在一个目录中
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 test { public static void main(String[] args) throws IOException { File file=new File("C:\\Users\\fan\\Desktop\\product.PPT"); splitFile(file); } public static void splitFile(File file) throws IOException { //byte数组长度为1024*1024,数组装满后大小就为1MB final int size=1024*1024; //将配置信息放入properties容器中 Properties pro=new Properties(); //用读取流关联源文件 FileInputStream fis=new FileInputStream(file); //自定义缓冲数组 byte[] buf=new byte[size]; //创建目的 FileOutputStream fos=null; int len=0; int count=1; //声明一个用于存放切割文件的目录 File dir=new File("c:\\users\\fan\\desktop\\partfiles"); //若目录不存在,创建之 if(!dir.exists()) dir.mkdirs(); while((len=fis.read(buf))!=-1) { fos=new FileOutputStream(new File(dir,(count++)+".part")); fos.write(buf,0,len); fos.close(); } pro.setProperty("partcount",count+""); pro.setProperty("filename",file.getName()); fos=new FileOutputStream(new File(dir,count+".properties")); pro.store(fos,"save"); fos.close(); fis.close(); } }
原文:https://www.cnblogs.com/javaStudy947/p/9142580.html