Advertisement
Guest User

Untitled

a guest
Jul 29th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.30 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.BufferedWriter;
  3. import java.io.File;
  4. import java.io.FileInputStream;
  5. import java.io.FileWriter;
  6. import java.io.InputStreamReader;
  7. import java.util.Collections;
  8. import java.util.Comparator;
  9. import java.util.List;
  10. import java.util.Set;
  11. import java.util.TreeSet;
  12. import java.util.Vector;
  13. import java.util.concurrent.ConcurrentHashMap;
  14.  
  15.  
  16. public class Munger {
  17.  
  18. public static void main(String[] args) throws Exception
  19. {
  20. File currDir = new File(".");
  21. File[] allFiles = currDir.listFiles();
  22.  
  23. ConcurrentHashMap<String,Set<Integer>> map = new
  24. ConcurrentHashMap<String,Set<Integer>>();
  25.  
  26. for (File f:allFiles)
  27. {
  28. String[] wholeThing = (f.getName()).split("_run");
  29.  
  30. if (wholeThing.length < 2)
  31. {
  32. continue;
  33. }
  34.  
  35. String folderRoot = wholeThing[0];
  36. String endBit = wholeThing[1];
  37.  
  38. Set<Integer> s = map.putIfAbsent(folderRoot, new TreeSet<Integer>());
  39.  
  40. Integer integer = Integer.parseInt(endBit);
  41. map.get(folderRoot).add(integer);
  42. }
  43.  
  44. int resultsCount = 0;
  45. int skippedCount = 0;
  46.  
  47. FileWriter fw = new FileWriter("all_results.txt");
  48. BufferedWriter bw = new BufferedWriter(fw);
  49.  
  50.  
  51.  
  52. List<String> orderedKeys = new Vector<String>(map.keySet());
  53. Collections.sort(orderedKeys, new Comparator<String> (){
  54.  
  55. @Override
  56. public int compare(String arg0, String arg1) {
  57. return arg0.compareTo(arg1); //TODO sort h'ever you want
  58. }
  59.  
  60.  
  61.  
  62. });
  63. for (String key: orderedKeys)
  64. {
  65. Set<Integer> valu = map.get(key);
  66.  
  67. resultsCount++;
  68. System.out.println("\nResult "+resultsCount+": "+key);
  69. bw.write("Result "+resultsCount+": "+key+"\n");
  70.  
  71. if (valu.size() < 10)
  72. {
  73. System.out.println("Only "+valu.size() + " - skipped");
  74. skippedCount++;
  75. bw.write("Only "+valu.size() + " - skipped\n\n");
  76. continue;
  77. }
  78.  
  79. int totalCorrect1=0;
  80. int totalCorrect2=0;
  81.  
  82.  
  83. for (int run:valu)
  84. {
  85. System.out.println(" "+run);
  86. bw.write(""+run+" ");
  87.  
  88. File resultsFile = new
  89. File(""+key+"_run"+run+"\\results\\").listFiles()[0];
  90. FileInputStream fis = new FileInputStream(resultsFile);
  91. BufferedReader ir = new BufferedReader(new InputStreamReader(fis));
  92.  
  93. String line = ir.readLine();
  94. int correct = Integer.parseInt(line.split(" ")[5]);
  95. ir.close();
  96. fis.close();
  97.  
  98. if (run < 6)
  99. {
  100. totalCorrect1 += correct;
  101. }
  102. else
  103. {
  104. totalCorrect2 += correct;
  105. }
  106. }
  107.  
  108. System.out.println(totalCorrect1 + " " +totalCorrect2);
  109. bw.write("\n"+totalCorrect1 + " " +totalCorrect2+"\n\n");
  110. }
  111.  
  112. System.out.println("\n\nNumber skipped: "+skippedCount+"\n\n");
  113. bw.write("\n\nNumber skipped: "+skippedCount+"\n\n");
  114.  
  115. bw.close();
  116. fw.close();
  117. }
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement