繁体   English   中英

如何使用Java读取XML文件?

[英]How to read an XML file using Java?

我需要使用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进行阅读?

查看标准提供的Java JAXP API。 您可以将XML从文件读入DOM(对象模型),也可以将其读为SAX-一系列事件(您的代码将为每个元素开始,元素结束等接收一个事件)。 对于DOM和SAX,我都会看一下API入门指南。

另外,您可能会发现JDOM使用起来更容易/更直观。

另一个建议:尝试使用Commons消化器。 这使您可以使用基于规则的方法非常快速地开发解析代码。 有一个教程在这里和图书馆可在这里

我也同意Brian和Alzoid的观点,因为JAXB非常适合快速启动并运行。 您可以使用JDK附带的xjc绑定编译器在给定XML模式的情况下自动生成Java类。

xstream在这里会做得很好。 查看一页教程

用Java解析XML有两种主要方法。 首先是使用SAX解析器, 请参见此处

这很简单。

第二个选项是使用DOM解析器, 请参见此处

这比较复杂,但可以提供更多控制权。

JAXB是另一种可能满足您需求的技术。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM