]> gitweb.fperrin.net Git - DictionaryPC.git/blobdiff - src/com/hughes/android/dictionary/engine/CheckDictionariesMain.java
Avoid replaceAll.
[DictionaryPC.git] / src / com / hughes / android / dictionary / engine / CheckDictionariesMain.java
index d712628f97829894e617fd77f870b28926edacab..6ad8fb298cdba440e80bcec259e51511bb7494f2 100644 (file)
@@ -1,17 +1,23 @@
 package com.hughes.android.dictionary.engine;
 
+import com.hughes.android.dictionary.DictionaryInfo;
+import com.hughes.android.dictionary.DictionaryInfo.IndexInfo;
+import com.hughes.util.CollectionUtil;
+
 import java.io.File;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.RandomAccessFile;
+import java.util.ArrayList;
 import java.util.Arrays;
-
-import com.hughes.android.dictionary.DictionaryInfo;
+import java.util.Collections;
+import java.util.List;
 
 public class CheckDictionariesMain {
   
-  static final String BASE_URL = "http://quickdic-dictionary.googlecode.com/files/";
-  static final String VERSION_CODE = "v004";
+  static final String BASE_URL = "http://github.com/rdoeffinger/Dictionary/releases/download/v0.2-dictionaries/";
+  static final String VERSION_CODE_OLD = "v006";
+  static final String VERSION_CODE = "v007";
 
   public static void main(String[] args) throws IOException {
     final File dictDir = new File(DictionaryBuilderMain.OUTPUTS);
@@ -20,6 +26,7 @@ public class CheckDictionariesMain {
 //    dictionaryInfoOut.println("# LANG_1\t%LANG_2\tFILENAME\tVERSION_CODE\tFILESIZE\tNUM_MAIN_WORDS_1\tNUM_MAIN_WORDS_2\tNUM_ALL_WORDS_1\tNUM_ALL_WORDS_2");
 
     final File[] files = dictDir.listFiles();
+    final List<String> dictNames = new ArrayList<String>();
     Arrays.sort(files);
     for (final File dictFile : files) {
       if (!dictFile.getName().endsWith("quickdic")) {
@@ -33,15 +40,20 @@ public class CheckDictionariesMain {
 
       final DictionaryInfo dictionaryInfo = dict.getDictionaryInfo();
 
+      String version_code = VERSION_CODE;
+      File zipFile = new File(dictFile.getPath() + "." + version_code + ".zip");
+      if (!zipFile.canRead()) {
+          version_code = VERSION_CODE_OLD;
+          zipFile = new File(dictFile.getPath() + "." + version_code + ".zip");
+      }
       dictionaryInfo.uncompressedFilename = dictFile.getName();
-      dictionaryInfo.downloadUrl = BASE_URL + dictFile.getName() + "." + VERSION_CODE + ".zip";
+      dictionaryInfo.downloadUrl = BASE_URL + dictFile.getName() + "." + version_code + ".zip";
       // TODO: zip it right here....
       dictionaryInfo.uncompressedBytes = dictFile.length();
-      final File zipFile = new File(dictFile.getPath() + "." + VERSION_CODE + ".zip");
       dictionaryInfo.zipBytes = zipFile.canRead() ? zipFile.length() : -1;
 
       // Print it.
-//      final PrintWriter textOut = new PrintWriter(new File(dictFile + ".text"));
+//      final PrintWriter textOut = new PrintWriter(new BufferedWriter(new FileWriter(dictFile + ".text")));
 //      final List<PairEntry> sorted = new ArrayList<PairEntry>(dict.pairEntries);
 //      Collections.sort(sorted);
 //      for (final PairEntry pairEntry : sorted) {
@@ -51,16 +63,27 @@ public class CheckDictionariesMain {
       
       // Find the stats.
       System.out.println("Stats...");
+      final List<String> indexNames = new ArrayList<String>();
+      for (final IndexInfo indexInfo : dictionaryInfo.indexInfos) {
+          indexNames.add(indexInfo.shortName);
+      }
+      dictNames.add(CollectionUtil.join(indexNames, "-") + "\n");
       final String row = dictionaryInfo.append(new StringBuilder()).toString();
+      if (!zipFile.canRead()) {
+        System.err.println("Couldn't read zipfile: " + zipFile);
+      }
       System.out.println(row + "\n");
       
+      
       dictionaryInfoOut.println(row);
       dictionaryInfoOut.flush();
       
       raf.close();
-      
     }
     
+    Collections.sort(dictNames);
+    System.out.println(dictNames.toString().replace(",", "  *"));
+    
     dictionaryInfoOut.close();
   }