ホームページ バックエンド開発 XML/RSS チュートリアル DOM メソッドを使用して XML ファイルを読み取るサンプル コード

DOM メソッドを使用して XML ファイルを読み取るサンプル コード

Mar 31, 2017 pm 02:25 PM

XMLコンテンツ(プロジェクトに入れる)

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

	<bookstore>
		<book id="1">
			<name>冰与火之歌</name>
			<author>乔治马丁</author>
			<year>2014</year>
			<price>89</price>
		</book>
		<book id="2">
			<name>安徒生童话</name>
			<year>2004</year>
			<price>77</price>		
			<language>English</language>
		</book>
	</bookstore>
ログイン後にコピー

コード実装

import java.awt.print.Book;
import java.io.IOException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;



public class XmlDOM {
    public static void main(String[] args) {
        DocumentBuilderFactory dbf =  DocumentBuilderFactory.newInstance();
      try {
        DocumentBuilder builder = dbf.newDocumentBuilder();
        Document document =  builder.parse("xml/001.xml");
        //nodeList获取所有节点的集合
        
        
        NodeList nodeList = document.getElementsByTagName("book");
       //便利每一个book节点
        for(int i=0;i<nodeList.getLength();i++){
            System.out.println("------------------------------------------j第" + (i+1) + "本书信息");
             //获取book节点
            Node book = nodeList.item(i);
          /*  //获取到书的所有信息
            NamedNodeMap bookMap = book.getAttributes();
            //遍历
            for(int n=0;n<bookMap.getLength();n++){
             Node attr =   bookMap.item(n);
            //获取属性名/获取属性值
            System.out.println("属性名:"+attr.getNodeName() + "" + "属性值:" + attr.getNodeValue());
            }*/
            
            NodeList childNodes = book.getChildNodes();
            for(int j=0;j<childNodes.getLength();j++){
                //区分出text类型的node以及element类型的node
                if(childNodes.item(j).getNodeType() == Node.ELEMENT_NODE){
                    //获取了Element节点的节点名
                    System.out.println(childNodes.item(j).getNodeName() + "=" + childNodes.item(j).getTextContent());
                }
               
            }
        }
        
    } catch (ParserConfigurationException e) {
        e.printStackTrace();
    } catch (SAXException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    }
}
ログイン後にコピー

実行結果:

------------------------------------------j第1本书信息 
name=冰与火之歌 
author=乔治马丁 
year=2014 
price=89 
------------------------------------------j第2本书信息 
name=安徒生童话 
year=2004 
price=77 
language=English
ログイン後にコピー

以上がDOM メソッドを使用して XML ファイルを読み取るサンプル コードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PowerPoint を使用して XML ファイルを開くことはできますか? PowerPoint を使用して XML ファイルを開くことはできますか? Feb 19, 2024 pm 09:06 PM

XML ファイルは PPT で開くことができますか? XML、Extensible Markup Language (Extensible Markup Language) は、データ交換とデータ ストレージで広く使用されている汎用マークアップ言語です。 HTML と比較して、XML はより柔軟であり、独自のタグとデータ構造を定義できるため、データの保存と交換がより便利で統一されます。 PPT (PowerPoint) は、プレゼンテーションを作成するために Microsoft によって開発されたソフトウェアです。包括的な方法を提供します。

Python で XML データを CSV 形式に変換する Python で XML データを CSV 形式に変換する Aug 11, 2023 pm 07:41 PM

Python の XML データを CSV 形式に変換する XML (ExtensibleMarkupLanguage) は、データの保存と送信に一般的に使用される拡張可能なマークアップ言語です。 CSV (CommaSeparatedValues) は、データのインポートとエクスポートに一般的に使用されるカンマ区切りのテキスト ファイル形式です。データを処理するとき、分析や処理を容易にするために、XML データを CSV 形式に変換する必要がある場合があります。 Pythonは強力です

C# 開発で XML および JSON データ形式を処理する方法 C# 開発で XML および JSON データ形式を処理する方法 Oct 09, 2023 pm 06:15 PM

C# 開発で XML および JSON データ形式を処理する方法には、特定のコード サンプルが必要です。現代のソフトウェア開発では、XML と JSON の 2 つのデータ形式が広く使用されています。 XML (Extensible Markup Language) はデータの保存と送信に使用されるマークアップ言語であり、JSON (JavaScript Object Notation) は軽量のデータ交換形式です。 C# 開発では、XML と JSON データの処理と操作が必要になることがよくありますが、この記事では、C# を使用してこれら 2 つのデータ形式を処理し、添付する方法に焦点を当てます。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

PHP 関数を使用して XML データを処理するにはどうすればよいですか? PHP 関数を使用して XML データを処理するにはどうすればよいですか? May 05, 2024 am 09:15 AM

PHPXML 関数を使用して XML データを処理します。 XML データを解析します。 simplexml_load_file() および simplexml_load_string() は、XML ファイルまたは文字列を読み込みます。 XML データにアクセスする: SimpleXML オブジェクトのプロパティとメソッドを使用して、要素名、属性値、およびサブ要素を取得します。 XML データを変更する: addChild() メソッドと addAttribute() メソッドを使用して、新しい要素と属性を追加します。シリアル化された XML データ: asXML() メソッドは、SimpleXML オブジェクトを XML 文字列に変換します。実用的な例: 製品フィード XML を解析し、製品情報を抽出し、変換してデータベースに保存します。

Python を使用して XML でデータ検証を実装する Python を使用して XML でデータ検証を実装する Aug 10, 2023 pm 01:37 PM

Python を使用した XML でのデータ検証の実装 はじめに: 実生活ではさまざまなデータを扱うことがよくありますが、その中でも XML (Extensible Markup Language) は一般的に使用されるデータ形式です。 XML は可読性と拡張性に優れており、データ交換や設定ファイルなどさまざまな分野で広く使用されています。 XML データを処理する場合、多くの場合、データの整合性と正確性を確認するためにデータを検証する必要があります。この記事では、Python を使用して XML でデータ検証を実装し、対応する

Python を使用した名前空間を含む XML ドキュメントの解析 Python を使用した名前空間を含む XML ドキュメントの解析 Aug 09, 2023 pm 04:25 PM

Python を使用して、名前空間を含む XML ドキュメントを解析します。XML は、さまざまなアプリケーション シナリオに適応できる一般的に使用されるデータ交換形式です。 XML ドキュメントを処理するときに、名前空間に関する状況が発生することがあります。ネームスペースは、さまざまな XML ドキュメント内の要素名の競合を防ぎ、XML の柔軟性とスケーラビリティを向上させます。この記事では、Python を使用して名前空間を含む XML ドキュメントを解析する方法と、対応するコード例を紹介します。まず、xml.et をインポートする必要があります。

JavaのJacksonライブラリを使用してPOJOをXMLに変換しますか? JavaのJacksonライブラリを使用してPOJOをXMLに変換しますか? Sep 18, 2023 pm 02:21 PM

Jackson は、Java オブジェクトから JSON へ、および JSON から Java オブジェクトへの変換に役立つ Java ベースのライブラリです。 JacksonAPI は他の API よりも高速で、必要なメモリ領域が少なく、大きなオブジェクトに適しています。 XmlMapper クラスの writeValueAsString() メソッドを使用して POJO を XML 形式に変換します。対応する POJO インスタンスをパラメーターとしてこのメ​​ソッドに渡す必要があります。構文 publicStringwriteValueAsString(Objectvalue)throwsJsonProcessingExceptionExampleimp

See all articles