我需要使用Java读取XML文件。其内容类似于
<ReadingFile>
<csvFile>
<fileName>C:/Input.csv</fileName>
<delimiter>COMMA</delimiter>
<tableFieldNamesList>COMPANYNAME|PRODUCTNAME|PRICE</tableFieldNamesList>
<fieldProcessorDescriptorSize>20|20|20</fieldProcessorDescriptorSize>
<fieldName>company_name|product_name|price</fieldName>
</csvFile>
</ReadingFile>
是否有任何特殊的读者/ JAR或我们应该使用 FileInputStream 阅读?
答案 0 :(得分:4)
查看标准的Java JAXP API。您可以将XML从文件读入DOM(对象模型),或者作为SAX读取 - 一系列事件(您的代码将为每个元素开始,元素结束等接收事件)。对于DOM和SAX,我会看一个API教程来开始。
或者,您可能会发现JDOM更容易/更直观地使用。
答案 1 :(得分:1)
另一个建议:尝试Commons消化器。这允许您使用基于规则的方法非常快速地开发解析代码。有一个教程here,该库可用here
我同意Brian和Alzoid的观点,因为JAXB非常适合让您快速上手。您可以使用JDK附带的xjc绑定编译器在给定XML模式的情况下自动生成Java类。
答案 2 :(得分:0)
xstream在这里会做得非常好。查看one page tutorial
答案 3 :(得分:0)
您可以使用外部库 蓖麻https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-1046622.html 我过去曾经使用过蓖麻。以下是一些可能有用的其他链接。 http://www.xml-training-guide.com/e-xml27.html
http://java.sun.com/j2se/1.4.2/docs/api/org/xml/sax/XMLReader.html http://www.cafeconleche.org/books/xmljava/chapters/ch07.html
答案 4 :(得分:0)
答案 5 :(得分:0)
JAXB是另一种可能适合您需求的技术。