package eu.fbk.knowledgestore.populator.naf; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Hashtable; import java.util.Set; public class getToBeProcessed { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { Hashtable<String,String> all = new Hashtable<String, String>(); Hashtable<String,String> sub = new Hashtable<String, String>(); Hashtable<String,String> intersect = new Hashtable<String, String>(); String ap="/Users/qwaider/Documents/Projects/NWR-June2015/knowledgestore/ks-distribution/target/" + //"nafs.txt"; "xmls.txt"; String sp="/Users/qwaider/Documents/Projects/NWR-June2015/knowledgestore/ks-distribution/target/" + //"processedNAFS.txt"; "processedxmls.txt"; String intersectp="/Users/qwaider/Documents/Projects/NWR-June2015/knowledgestore/ks-distribution/target/" + // "toBeProcessedNAFS.txt"; "toBeProcessedXMLS.txt"; readFile(ap,all); readFile(sp,sub); intersect(intersectp,all,sub,intersect); System.out.println("all: "+all.size()+"-sub:"+sub.size()+"-intersect:"+intersect.size()); } private static void intersect(String intersectp, Hashtable<String, String> all, Hashtable<String, String> sub,Hashtable<String, String> intersect) throws IOException { File file = new File(intersectp); // if file doesnt exists, then create it if (!file.exists()) { file.createNewFile(); } FileWriter fw = new FileWriter(file.getAbsoluteFile()); BufferedWriter bw = new BufferedWriter(fw); for(String link : all.keySet()){ if(!sub.containsKey(link)){ bw.write(link+"\n"); bw.flush(); if(!intersect.containsKey(link)) intersect.put(link, ""); //System.out.println(link); } } bw.close(); } static void readFile(String filepath,Hashtable<String,String> fls){ BufferedReader br = null; try { String sCurrentLine; br = new BufferedReader(new FileReader(filepath)); while ((sCurrentLine = br.readLine()) != null) { fls.put(sCurrentLine, ""); //System.out.println(sCurrentLine); } } catch (IOException e) { e.printStackTrace(); } finally { try { if (br != null)br.close(); } catch (IOException ex) { ex.printStackTrace(); } } } }