A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 梁小刀11 中级黑马   /  2015-1-29 22:51  /  783 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package FileSplit;

  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.FileOutputStream;
  6. import java.io.IOException;

  7. public class CopyOfmySplit02 {
  8.     public static void split(String srapath,int blockSize,String destpath) throws IOException{
  9.    
  10.             if((new File(srapath)).isFile()&&new File(destpath).isDirectory()&&(new File(srapath)).lenth>=blockSize){ //判断 srapath 是指向文件,destpath指向目录,并且 文件块的大小<=文件大小
  11.             FileInputStream fis=new FileInputStream(srapath);
  12.             FileOutputStream fos=null;
  13.             byte[]bytes=new byte[blockSize];//通过控制缓冲区的大小实现分割块的大小
  14.             int len=0;
  15.             int count=1;
  16.             while((len=fis.read(bytes))!=-1){
  17.                     fos=new FileOutputStream(destpath+"/"+(count++)+".patr");//.part作为后缀.
  18.                     fos.write(bytes, 0, len);
  19.                     fos.close();
  20.             }
  21.             fis.close();
  22.     }else{
  23.             System.out.println("源文件或者目标目录错误!");
  24.             return;
  25.     }
  26.             }
  27.                    
  28.     public static void main(String[] args) throws IOException {
  29.                 split("e:/test/1.mp3",1024*1024,"e:/test");//不要太小了,否则会出很多很多个文件!!!
  30.         }
  31. }
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马