欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java文件合并,,package com.

来源: javaer 分享于  点击 44995 次 点评:167

Java文件合并,,package com.


package com.lnsd;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.nio.channels.FileChannel;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.Comparator;import java.util.List;public class FileCombine {    public void combineFiles(List<File> files,String saveFileName) throws IOException{        File mFile=new File(saveFileName);        if(!mFile.exists()){            mFile.createNewFile();        }        FileChannel mFileChannel = new FileOutputStream(mFile).getChannel();        FileChannel inFileChannel;        for(File file:files){            inFileChannel=new FileInputStream(file).getChannel();            inFileChannel.transferTo(0, inFileChannel.size(), mFileChannel);            inFileChannel.close();        }        mFileChannel.close();    }    public static void main(String[] args) {        FileCombine fc=new FileCombine();        File file=new File("C:\\\\Users\\\\feng\\\\Desktop\\\\qiao\\\\assets");        List<File> files=new ArrayList<File>();        for(int i=1;i<9;i++){                files.clear();        for(File tmpFile:file.listFiles()){            if(tmpFile.getName().startsWith(i+"")){                files.add(tmpFile);            }        }        try {            Collections.sort(files, new Comparator<File>() {                @Override                public int compare(File o1, File o2) {                    // TODO Auto-generated method stub                    int result=0;                    String name1=o1.getName().replace(".dat", "").replace(".", "");                    String name2=o2.getName().replace(".dat", "").replace(".", "");                    double d=Double.parseDouble(name1)*100-Double.parseDouble(name2)*100;                    System.out.println(d);                     if(d>0){                        result=1;                    }else if(d<0) {                        result=-1;                    }else{                        result=0;                    }                    return result;                }            });            System.out.println(Arrays.toString(files.toArray()));            fc.combineFiles(files, "C:\\\\Users\\\\feng\\\\Desktop\\\\qiao\\\\"+i+".txt");        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        }    }}//该片段来自于http://byrx.net
相关栏目:

用户点评