Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Swing应用程序保存的XML文件_Java_Xml_Swing - Fatal编程技术网

Java 从Swing应用程序保存的XML文件

Java 从Swing应用程序保存的XML文件,java,xml,swing,Java,Xml,Swing,我正在开发一个JavaSwing应用程序,我想创建对象并将它们保存在XML文件中,其中包含用户在某些文本字段中写入的信息 如何将数据保存到XML文件中,以形成这些对象?您可以编写自己的XML编写器,将对象/文本写入XML文件。例如,使用DOM public boolean writeCommonSettingsFromGUI() { DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();

我正在开发一个JavaSwing应用程序,我想创建对象并将它们保存在XML文件中,其中包含用户在某些文本字段中写入的信息


如何将数据保存到XML文件中,以形成这些对象?

您可以编写自己的XML编写器,将对象/文本写入XML文件。例如,使用DOM

public boolean writeCommonSettingsFromGUI()
  {
      DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
      DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
      Document doc = docBuilder.newDocument();

      Element rootElement = doc.createElement("NAME_OF_A_ELEMENT");
      doc.appendChild(rootElement);

      Element xmlInfo = doc.createElement("NAME_OF_ANOTHER_ELEMENT");
      xmlInfo.setTextContent("YOUR_CONTENT_TO_SET_FOR_THIS_ELEMENT");
      rootElement.appendChild(xmlInfo);

      TransformerFactory transformerFactory = TransformerFactory.newInstance();
      Transformer transformer = transformerFactory.newTransformer();
      transformer.setOutputProperty(OutputKeys.INDENT, "yes");
      transformer.setOutputProperty(OutputPropertiesFactory.S_KEY_INDENT_AMOUNT, "5");
      transformer.setOutputProperty(OutputKeys.ENCODING, "ISO-8859-1");
      DOMSource source = new DOMSource(doc);

      StreamResult result = null;

      result = new StreamResult(new File("FILE_PATH_WHERE_TO_SAVE_YOUR_XML"));

      transformer.transform(source, result);

      return true;
  }

使用castor框架,您可以将java类映射到xml文件,反之亦然

查看
XMLEncoder
/
XMLDecoder