zoukankan      html  css  js  c++  java
  • IO流 文件的切割和合并

    package com.yyq;
    import java.io.*;
    import java.util.*;
    /*
     * 切割流
     * 
     */
    public class SplitFile {
    
        public static void main(String[] args) throws IOException {
            // TODO Auto-generated method stub
            splitFile();
            merge();
        }
        public static void merge() throws IOException{
            ArrayList<FileInputStream>al = new ArrayList<FileInputStream>();
            for(int x = 1;x<=3;x++){
                al.add(new FileInputStream(x+".MYpart"));
            }
            Iterator<FileInputStream> it = al.iterator();
            final Enumeration<FileInputStream> en = new Enumeration<FileInputStream>(){
                public boolean hasMoreElements(){
                    return it.hasNext();
                }
                public FileInputStream nextElement(){
                    return it.next();
                }
            };
            // 获取一个圆
            SequenceInputStream sis = new SequenceInputStream(en);
            FileOutputStream fos = new FileOutputStream("0.jpg");
            byte[] buf = new byte[1024];
            int len = 0;
            while((len = sis.read(buf))!=-1){
                fos.write(buf,0,len);
            }
            fos.close();
            sis.close();
        }
        public static void splitFile() throws IOException{
            FileInputStream fis = new FileInputStream("1.jpg");
            FileOutputStream fos =null;
            byte[] buf = new byte[1024*1024];
            int len = 0;
            int count = 1;
            while((len = fis.read(buf))!=-1){
                fos = new FileOutputStream(""+count+++".MYpart");
                //File file = new file(""+count+++".part");
                fos.write(buf,0,len);
                fos.close();
                File file = new File(""+count+".part");
                file.delete();
                
            }
            if(fos!=null){
                fos.close();
            }
        }
    
    }
  • 相关阅读:
    关于如何Debug进MVC3源代码
    浏览文件按钮
    C#多线程学习(五) 多线程的自动管理(定时器)
    记录总数
    Json对象格式化字符串输出
    数据与通信之WebRequest.Web
    ASP.NET MVC3中的ViewBag动态性
    SQL Server 2005的XML数据修改语言(XML DML)
    SOCKET与TCP/IP与HTTP的关系
    WPF绑定方式
  • 原文地址:https://www.cnblogs.com/yangyongqian/p/5155137.html
Copyright © 2011-2022 走看看