我想制作一个Java
swing应用程序,从中我可以生成保存相同数据的xml文件,并且生成的文件数将由用户决定。我的xml文件包含xml模式,而我的xml文件结构看起来像这样
<transaction>
<xs:schema id="transaction" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="transaction" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="id">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="0" />
<xs:element name="sn" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="data">
<xs:complexType>
<xs:sequence>
<xs:element name="dateTime" type="xs:dateTime" minOccurs="0" />
<xs:element name="key" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="productData">
<xs:complexType>
<xs:sequence>
<xs:element name="dateTime" type="xs:dateTime" minOccurs="0" />
<xs:element name="key" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<id>
<name>smith</tli>
<sn>1234567</sn>
</id>
<data>
<dateTime>2011-06-24T17:08:36.3727674+05:30</dateTime>
<key>book</key>
</data>
<productData>
<dateTime>2011-06-24T17:08:36.3727674+05:30</dateTime>
<key>game</key>
</productData>
</transaction>
如果有人提供一些代码片段帮助,我是Java新手,它将对我有更大的帮助。
我想生成保存示例XML中给出的xml模式的xml文件。
在Java中,您使用JAXP处理XML。您使用与DOM相关的类来生成xml。以下是使用JAXP创建XML的一个小示例。
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class WriteXMLFile {
public static void main(String argv[]) {
try {
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
// root elements
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("company");
doc.appendChild(rootElement);
// staff elements
Element staff = doc.createElement("Staff");
rootElement.appendChild(staff);
// set attribute to staff element
Attr attr = doc.createAttribute("id");
attr.setValue("1");
staff.setAttributeNode(attr);
// shorten way
// staff.setAttribute("id", "1");
// firstname elements
Element firstname = doc.createElement("firstname");
firstname.appendChild(doc.createTextNode("yong"));
staff.appendChild(firstname);
// lastname elements
Element lastname = doc.createElement("lastname");
lastname.appendChild(doc.createTextNode("mook kim"));
staff.appendChild(lastname);
// nickname elements
Element nickname = doc.createElement("nickname");
nickname.appendChild(doc.createTextNode("mkyong"));
staff.appendChild(nickname);
// salary elements
Element salary = doc.createElement("salary");
salary.appendChild(doc.createTextNode("100000"));
staff.appendChild(salary);
// write the content into xml file
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\file.xml"));
// Output to console for testing
// StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
System.out.println("File saved!");
} catch (ParserConfigurationException pce) {
pce.printStackTrace();
} catch (TransformerException tfe) {
tfe.printStackTrace();
}
}
}
本文向大家介绍java生成xml格式文件的方法,包括了java生成xml格式文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java生成xml格式文件的方法。分享给大家供大家参考,具体如下: 这里演示利用Java生成xml格式文件 Demo中所用到的jar包Jdom.jar 。 为了方便理解,我写了个Demo 运行效果是在本人电脑c盘有个books.xml文件(此前是没有这个文件
问题内容: 给出如下结果 但是我需要从输出中删除xml声明,我该怎么做 问题答案: 您是否看到了Transformer使用的OutputKeys?特别是OMIT_XML_DECLARATION。 请注意,删除标头在XML 1.0中有效,但是会丢失字符编码数据(尤其如此),这可能非常重要。
问题内容: 是否有任何API /解决方案可从XML文件数据和定义生成PDF报告。例如,XML定义/数据可以是: 我觉得将HTML转换为PDF也是一个很好的解决方案。 当前,我们使用iText API编写Java代码。我想外部化代码,以便非技术人员可以编辑和更改。 问题答案: 看看Apache FOP 。使用XSLT样式表将XML(或XHTML)转换为XSL- FO。然后,使用FOP读取XSL-FO
我正在使用snmp4j开发snmp管理器。我需要读取MIB文本文件并生成相应的XML文件。是否有任何SNMP4j库可用于解析Mib文本文件并获取每个对象的数据。如果snmp4j不能解决我的问题,是否有其他类似的开源可用? 谢谢
本文向大家介绍asp.net简单生成XML文件的方法,包括了asp.net简单生成XML文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了asp.net简单生成XML文件的方法。分享给大家供大家参考,具体如下: 方式一:直接使用DataSet 方式二:自定义生成方式 更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net操作XML技巧总结》、《asp.net文件
本文向大家介绍C++生成和解析XML文件的讲解,包括了C++生成和解析XML文件的讲解的使用技巧和注意事项,需要的朋友参考一下 概述 1.xml 指可扩展标记语言(EXtensible Markup Language) 2.xml 是一种标记语言,类似html 3.xml 的设计宗旨是传输数据,而非显示数据 4.xml 标签没有被预定义。需要自行定义标签 XML与HTML区别 1.xml 不是 h