Ejemplo n.º 1
0
  protected void addItem(Crystal crystal) {
    FileInputStream stream;
    InputStreamReader streamReader;
    BufferedReader in;

    try {
      FileWriter w = new FileWriter(storageFile.toString());
      BufferedWriter out = new BufferedWriter(w);

      stream = new FileInputStream(storageFile);
      streamReader = new InputStreamReader(stream);
      in = new BufferedReader(streamReader);

      String line;
      boolean placed = false;
      while ((line = in.readLine()) != null) {
        if (crystal.getId() < Integer.valueOf(line.split("==")[0]) && !placed) {
          String crystalString =
              crystal.getId()
                  + "=="
                  + crystal.getExpirationDate()
                  + "=="
                  + Converters.toBase64(crystal.getContents());
          out.write(crystalString);
          out.newLine();
          placed = true;
        } else {
          out.write(line);
          out.newLine();
        }
      }

      if (!placed) {
        String crystalString =
            crystal.getId()
                + "=="
                + crystal.getExpirationDate()
                + "=="
                + Converters.toBase64(crystal.getContents());
        out.write(crystalString);
        out.newLine();
      }

      in.close();

      out.close();
      w.close();

    } catch (FileNotFoundException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }