private static Map<String, List<Double>> parseFile(String filename, int idLine, int id) {
    String stationLabel;
    Map<String, List<Double>> stationMap = new HashMap<String, List<Double>>();

    String regex = "\"([^\"]*)\".*\",([\\d\\.]+),([\\d\\.]+)";
    Pattern pattern = Pattern.compile(regex);
    Matcher m;
    String line;
    BufferedReader br = null;

    try {
      br = new BufferedReader(new FileReader(filename));
      while ((line = br.readLine()) != null) {
        m = pattern.matcher(line);
        if (m.find()) {
          stationLabel = m.group(1);
          if (!stationMap.containsKey(stationLabel)) {
            List<Double> coordinates = new ArrayList<Double>();
            coordinates.add(Double.valueOf(m.group(2)));
            coordinates.add(Double.valueOf(m.group(3)));
            stationMap.put(stationLabel, coordinates);
          }
        }
      }
    } catch (FileNotFoundException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } finally {
      try {
        br.close();
      } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
    }

    return stationMap;
  }