www.pudn.com > sendmail.rar > CompareUtil.java


package com.sendmail; 
 
 
import java.io.BufferedReader; 
import java.io.File; 
import java.io.FileReader; 
import java.io.FileWriter; 
import java.io.IOException; 
import java.io.PrintWriter; 
import java.util.ArrayList; 
 
public class CompareUtil { 
    //static public String EXP_FILE_NAME = "d:\\tmp\\expfile.txt";  
    static public String EXP_FILE_NAME = "expfile.txt"; 
    /** 
     * 这个类完成的功能有: 
     * 1.拿newFileName的文件中的记录和oldFileName文件中的记录去比较,过滤出旧文件中没有的记录。 
     * 2.将第一步过滤出的记录保存成一个全新的文件。 
     * @param newFileName 
     * @param oldFileName 
     * @return 
     * @throws IOException 
     */ 
    public boolean compareFileAndExportResult (String newFileName, String oldFileName) throws IOException{ 
        try { 
            BufferedReader newFile = new BufferedReader(new FileReader(SendMail.FILE_PATH+newFileName)); 
            BufferedReader oldFile = new BufferedReader(new FileReader(SendMail.FILE_PATH+oldFileName)); 
            String lineValue = ""; 
            StringBuffer outPrintSB = new StringBuffer(); 
            String newline = System.getProperty("line.separator"); 
            ArrayList newFileArray = new ArrayList();  	//保存newFileName文件中的所有行记录 
            ArrayList oldFileArray = new ArrayList();	//保存oldFileName文件中的所有行记录 
            ArrayList expFileArray = new ArrayList();	//保存比较结果 
            while ((lineValue = newFile.readLine()) != null) { 
//                System.out.println(lineValue); 
                if (!lineValue.equals("")) { 
                    newFileArray.add(lineValue); 
                } 
            } 
            newFile.close(); 
            while ((lineValue = oldFile.readLine()) != null) { 
//                System.out.println(lineValue); 
                if (!lineValue.equals("")) { 
                    oldFileArray.add(lineValue); 
                } 
            } 
            oldFile.close(); 
            for (int i=0;i