예제 #1
0
  public void writeGatheringXML(
      String _fileName,
      ArrayList<GatheringsPlayerData> _players,
      String _gatheringName,
      int _displayMode) {
    String dataXML = "";

    XmlSerializer serializer = Xml.newSerializer();
    StringWriter writer = new StringWriter();
    try {
      serializer.setOutput(writer);
      serializer.startDocument("UTF-8", true);

      serializer.startTag("", "gathering");
      serializer.startTag("", "name");
      serializer.text(_gatheringName);
      serializer.endTag("", "name");

      serializer.startTag("", "displaymode");
      serializer.text(String.valueOf(_displayMode));
      serializer.endTag("", "displaymode");

      serializer.startTag("", "players");

      for (GatheringsPlayerData player : _players) {

        String name = player.getName();

        String life = String.valueOf(player.getStartingLife());
        if (life == null || life == "") life = "0";

        serializer.startTag("", "player");

        serializer.startTag("", "name");
        serializer.text(name);
        serializer.endTag("", "name");

        serializer.startTag("", "startinglife");
        serializer.text(String.valueOf(life));
        serializer.endTag("", "startinglife");

        serializer.endTag("", "player");
      }
      serializer.endTag("", "players");
      serializer.endTag("", "gathering");
      serializer.endDocument();

      dataXML = writer.toString();
    } catch (Exception e) {
      throw new RuntimeException(e);
    }

    try {
      File path = new File(ctx.getFilesDir(), FOLDERPATH);
      if (!path.exists())
        if (path.mkdirs() == false) throw new FileNotFoundException("Folders not made");

      File file = new File(path, _fileName + ".xml");

      BufferedWriter out = new BufferedWriter(new FileWriter(file));

      out.write(dataXML);
      out.close();
    } catch (FileNotFoundException e) {
    } catch (IOException e) {
    }
  }