• 文件分割器,一个读取流,相应多个输出流,并且生成的碎片文件都有有序的编号


    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 FileSpilte {
    
    	/**
    	 * @param args
    	 * @throws IOException 
    	 */
    	/*
    	 * 文件分割器,
    	 * 一个读取流,相应多个输出流。并且生成的碎片文件都有有序的编号
    	 */
    	public static void main(String[] args) throws IOException {
            
    		 File destdir = new File("teampFile\filepart");
    		 File file = new File("E:\A-Lin - 给我一个理由忘记.mp3");
    		 
    	    	fileSplite(file,destdir);
    	}
    
    	private static void fileSplite(File file, File destdir) throws IOException {
    		
    		if(!file.exists()){ 
    			throw new RuntimeException(destdir+"文件不存在");
    		}
    	   
    		if(!destdir.exists())
    		{
    			destdir.mkdirs();
    		}
    		FileInputStream fis = new FileInputStream(file);
    		
    		FileOutputStream fos = null;
    		
    		byte[] buf =new byte[1024*1024];
    		int count = 0; 
    		int len = 0;
    		
    		while((len=fis.read(buf))!=-1){ 
    			File partfile = new File(destdir,(++count)+".part");
    			fos = new FileOutputStream(partfile);
    			fos.write(buf,0,len);
    			fos.close();
    		} 
    		Properties prop =new Properties();
    		prop.setProperty("partcount",Integer.toString(count));
    		prop.setProperty("filename", file.getName());
    		
    		File profile = new File(destdir,(++count)+".properties");
    		fos=new FileOutputStream(profile);
    		prop.store(fos, "save");
    		
    		fos.close();
    		
    	}
    
    }
    

  • 相关阅读:
    co模块总结
    Promise总结
    webpack错误Chunk.entry was removed. Use hasRuntime()
    jquery validate用法总结
    node命令行开发
    animation总结
    formData使用总结
    vue-resource发送multipart/form-data数据
    keil中使用Astyle格式化你的代码的方法-keil4 keil5通用
    tcpip入门的网络教程汇总
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5396974.html
Copyright © 2020-2023  润新知