21xrx.com
2024-11-25 05:11:03 Monday
登录
文章检索 我的文章 写文章
使用Java读取XML文件中的通讯录信息
2023-06-15 10:54:27 深夜i     --     --
Java XML DOM 通讯录 文件 解析 API 节点 元素 属性 文档 联系人 示例代码 遍历

文章:

XML是广泛使用的数据交换格式,许多应用程序都使用它来存储和共享数据。在许多情况下,这些数据都是关于人或联系人的。在本文中,我们将探讨如何使用Java从XML文件中读取通讯录信息。

Java提供了许多库和API用于读取XML文件。其中最常用的是Java DOM API。DOM (Document Object Model)是一种解析XML文档的标准方法。它将XML文档解析为一个由节点(或元素)和属性组成的树形结构。

以下是使用Java DOM API从XML文件中读取通讯录信息的示例代码:


import java.io.File;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;

import org.w3c.dom.NodeList;

public class ReadXMLFile {

  public static void main(String[] args){

   try {

     File inputFile = new File("contacts.xml");

     DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();

     DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();

     Document doc = dBuilder.parse(inputFile);

     doc.getDocumentElement().normalize();

     System.out.println("Root element :" + doc.getDocumentElement().getNodeName());

     NodeList nList = doc.getElementsByTagName("contact");

     System.out.println("----------------------------");

     for (int temp = 0; temp < nList.getLength(); temp++) {

      Node nNode = nList.item(temp);

      System.out.println("\nCurrent Element :" + nNode.getNodeName());

      if (nNode.getNodeType() == Node.ELEMENT_NODE) {

        Element eElement = (Element) nNode;

        System.out.println("First Name : " + eElement.getElementsByTagName("firstname").item(0).getTextContent());

        System.out.println("Last Name : " + eElement.getElementsByTagName("lastname").item(0).getTextContent());

        System.out.println("Email : " + eElement.getElementsByTagName("email").item(0).getTextContent());

        System.out.println("Phone : " + eElement.getElementsByTagName("phone").item(0).getTextContent());

      }

     }

   } catch (Exception e) {

     e.printStackTrace();

   }

  }

}

在上面的示例代码中,我们首先创建了一个File对象来表示XML文件。然后,我们使用DocumentBuilderFactory和DocumentBuilder类创建了一个Document对象,该对象表示整个XML文档。接下来,我们使用doc.getDocumentElement()方法获取文档的根元素,并使用normalize()方法标准化文档。最后,我们使用getElementsByTagName()方法获取所有联系人元素,并遍历它们以获取每个联系人的详细信息。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复