code: public static void readMapFile (BufferedReader bin, HashMap<String, Integer> map)
          throws IOException
      {
          String line;
          while ((line = bin.readLine()) != null) {
              int eidx = line.indexOf(SEP_STR);
              if (eidx == -1) {
                  throw new IOException("Malformed line, no '" + SEP_STR +
                                        "': '" + line + "'");
              }
              try {
                  String code = line.substring(eidx+SEP_STR.length());
                  map.put(line.substring(0, eidx), Integer.valueOf(code));
              } catch (NumberFormatException nfe) {
                  String errmsg = "Malformed line, invalid code: '" + line + "'";
                  throw new IOException(errmsg);
              }
          }
      }
docs: Reads in a mapping from strings to integers, which should have been
  written via {@link #writeMapFile}.