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) { } }