当前位置: 首页 > 面试题库 >

Java-读取XML文件

杜绍元
2023-03-14
问题内容

我试图从XML文件中读取一些数据,但遇到麻烦,我拥有的XML如下:

<xml version="1.0" encoding="UTF-8"?>

<EmailSettings>
    <recipient>test@test.com</recipient>
    <sender>test2@test.com</sender>
    <subject>Sales Query</subject>
    <description>email body message</description>
</EmailSettings>

我试图将这些值作为字符串读取到我的Java程序中,到目前为止,我已经编写了以下代码

private static Document getDocument (String filename){
    try {

        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

        factory.setIgnoringComments(true);
        factory.setIgnoringElementContentWhitespace(true);
        factory.setValidating(false);

        DocumentBuilder builder = factory.newDocumentBuilder();
        return builder.parse(new InputSource(filename));        
    }
    catch (Exception e){
        System.out.println("Error reading configuration file:");
        System.out.println(e.getMessage());
    }
    return null;
}

Document doc = getDocument(configFileName);

Element config = doc.getDocumentElement();

我正在努力读取实际的字符串值。


问题答案:

可能的实现之一:

File file = new File("userdata.xml");
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory
        .newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document document = documentBuilder.parse(file);
String usr = document.getElementsByTagName("user").item(0).getTextContent();
String pwd = document.getElementsByTagName("password").item(0).getTextContent();

与XML内容一起使用时:

<credentials>
    <user>testusr</user>
    <password>testpwd</password>
</credentials>

结果"testusr""testpwd"分配给上述usrpwd参考。



 类似资料:
  • 我在从xml文件中读取信息时遇到了一点问题... 传给我的文件有几千行。我只对300-400行感兴趣。当用户完成操作并且要读取的数据可以存储在中时,我不需要将任何数据写回xml。 我只对最内部名称元素的感兴趣(前两个是“098-0031”和“098-0032”)。 这是我的代码: 但是条件从来没有填满...谁能给我解释一下为什么。也许可以向我展示一种简单的方法来将这些值存储在中?提前感谢! 编辑:

  • 问题内容: 任何人都知道我该如何写有JDBC连接(用户名,passwd,驱动程序,连接)的XMl文件,然后读取该XML以连接到db? 问题答案: 编写的方法如下: 假设已调用它并将其放置在类路径的根目录中,下面是一个示例,说明如何在和的帮助下加载它: 与属性文件相比,它只是非常冗长。这是此类属性文件的示例: 假设它已被命名并放置在类路径的根目录中(或它的根路径已添加到类路径中),这是从类路径中加载

  • 本文向大家介绍java遍历读取xml文件内容,包括了java遍历读取xml文件内容的使用技巧和注意事项,需要的朋友参考一下 本文实例讲解了java遍历读取xml文件内容的详细代码,分享给大家供大家参考,具体内容如下 再分享一例: 用JAVA读取XML文件 解析XML的步骤如下:   1.创建DocumentBuilder工厂   2.创建DocumentBuilder对象   3.Document

  • 本文向大家介绍java如何解析/读取xml文件,包括了java如何解析/读取xml文件的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java解析/读取xml文件的方法,供大家参考,具体内容如下 XML文件 Java 代码: 以上就是本文的全部内容,希望对大家的学习有所帮助。

  • 问题内容: 我需要使用Java读取XML文件。它的内容就像 是否有特殊的阅读器/ JAR,还是应该使用 FileInputStream进行 阅读? 问题答案: 另一个建议:尝试使用Commons消化器。这使您可以使用基于规则的方法非常快速地开发解析代码。有一个教程在这里和图书馆可在这里 我也同意Brian和Alzoid的观点,因为JAXB非常适合快速启动和运行。您可以使用JDK附带的xjc绑定编译

  • 我需要从我的DYNAMIC WEB PROJECT读取一个config.xml文件。我已将我的文件放在文件夹结构MyProj/WebContent/WEB-INF/class/config.xml文件夹中。当我打印文件的绝对路径new File(config.xml). getAbsoltePath()时,它会检查eclipse主目录(C:\Temp\eclipse\eclipse)而不是我的项目