public static List<Datum> readDataFile(String path) throws IOException, ClassNotFoundException {
        List<Datum> datums = new ArrayList<Datum>();
        File directory = new File(path);
        File[] files = directory.listFiles();
        for (File f : files) {
            if (!f.getName().contains("~")) {
                try {

                    BufferedReader bfr = new BufferedReader(new FileReader(f));
                    String line = "";
                    while ((line = bfr.readLine()) != null) {
                        String[] strs = line.split("\\s+");
                            if (line.isEmpty()||line.trim().equals("")||line.trim().equals("\n")){
//                        System.out.println("skipped");
                    }
                    else{
//                        System.out.println(strs[0]+":"+strs[1]);
                        Datum d = new Datum(strs[0], strs[2], strs[1]);
                        datums.add(d);
                        
                    }

                    }
                    bfr.close();

                } catch (FileNotFoundException ex) {
                    Logger.getLogger(FileOperation.class.getName()).log(Level.SEVERE, null, ex);
                } catch (IOException ex) {
                    Logger.getLogger(FileOperation.class.getName()).log(Level.SEVERE, null, ex);
                }
            }

        }

        System.out.println("Size:" + datums.size());
        return datums;
    }