在Java中解析XML以获取Key,Value Pair?

时间:2015-04-18 11:10:45

标签: java xml parsing java-ee xml-parsing

有许多XML解析技术,我还没有意识到。我想解析XML(表单数据)并获取Key,Value对中的表单输出数据。哪种XML解析技术可以轻松获取以下XML格式的键值对中的值,

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<control for="9bd2f8fd2421eb0b0a410feaa1f482c50551486a" name="first-name" type="input" datatype="string">
                <resources lang="en">
                        <label>First Name</label>
                        <help />
                        <hint>Your first or given name
                        </hint>
                        <alert />
                </resources>
                <resources lang="fr">
                        <label>Prénom</label>
                        <help />
                        <hint>
                                Votre prénom
                        </hint>
                                <alert />
                </resources>
                <value>Rahul</value>
        </control>
        <control for="8532f26e19a5b33200f56bb839c5f3aa2fa3a25f" name="last-name" type="input" datatype="string">
                <resources lang="en">
                        <label>Last Name</label>
                        <help />
                        <hint>Your last name</hint>
                        <alert />
                </resources>
                <resources lang="fr">
                        <label>Nom de famille</label>
                        <help />
                        <hint>Votre nom de famille</hint>
                        <alert />
                </resources>
                <value>Sharma
                </value>
        </control>
</metadata> 

注意我只需要使用英语语言捕获值。对于上面的XML,我需要输出如下,

First Name - Rahul
Last Name - Sharma 

1 个答案:

答案 0 :(得分:2)

这可能会朝着正确的方向发展:

Which is the best library for XML parsing in java

要使用英语捕获值,您必须使用自然语言处理来识别使用xml解析器捕获的文本的语言。幸运的是,您可以使用库来识别英语句子。这是一篇概述用于识别文本语言的java库的帖子:

How to detect language of user entered text?

然后在删除非英语文本后,您可以检索字典。