多語言的資源套件檔案比較檢查,自動核對。
package com.smeishop.util;</p><p>import java.io.BufferedReader;<br />import java.io.File;<br />import java.io.FileReader;<br />import java.io.IOException;</p><p>/*<br /> * 比較資源套件是否相同<br /> * 修改file1和file2的路徑,運行來比較<br /> */<br />public class ComparatorProperties {<br />public static void main(String[] args) {<br />String file1 = "E://globalMessages_en.properties";<br />String file2 = "E://globalMessages_zh.properties";<br />ComparatorProperties cp = new ComparatorProperties();<br />cp.ComparatorStart(new File(file1),new File(file2));<br />}</p><p>public void ComparatorStart(File file1, File file2) {<br />try {<br />FileReader fr1 = new FileReader(file1);<br />BufferedReader br1 = new BufferedReader(fr1);</p><p>FileReader fr2 = new FileReader(file2);<br />BufferedReader br2 = new BufferedReader(fr2);<br />String readoneline1, readoneline2, prop1, prop2;<br />int k;<br />k = 0;</p><p>while ((readoneline1 = br1.readLine()) != null) {<br />k++;<br />readoneline2 = br2.readLine();<br />if (readoneline1 != null && readoneline2 != null) {<br />if (!readoneline1.equals(readoneline2)) {<br />if (!readoneline1.equals("") && !readoneline1.equals("")) {<br />if (readoneline1.charAt(0) == readoneline2.charAt(0)) {<br />if (readoneline1.charAt(0) == "#".charAt(0)<br />|| readoneline1.charAt(0) == "#".charAt(0)) {<br />continue;<br />} else {<br />prop1 = readoneline1.split("=")[0];<br />prop2 = readoneline2.split("=")[0];<br />if (!prop1.equals(prop2)) {<br />System.out.println("error on line " + k);<br />System.out.println("File /"" + file1.getName() + "/" line "<br />+ k + " : " + prop1);<br />System.out.println("File /"" + file2.getName() + "/" line "<br />+ k + " : " + prop2);<br />break;<br />}<br />}<br />} else {<br />System.out.println("error on line " + k);<br />System.out.println("first char different " + readoneline1);<br />System.out.println("first char different " + readoneline2);<br />System.out.println("File /"" + file1.getName() + "/" line " + k<br />+ " first char : " + readoneline1.charAt(0));<br />System.out.println("File /"" + file2.getName() + "/" line " + k<br />+ " first char : " + readoneline2.charAt(0));<br />break;<br />}<br />} else {<br />System.out.println("2error on line " + k);<br />break;<br />}<br />}<br />} else {<br />System.out.println("error on line " + k);<br />break;<br />}<br />}<br />} catch (IOException e) {<br />}<br />}<br />}<br />
代碼很簡單,用的著的拿去用吧。