Ruft Attribute und Werte aus einer XML-Datei in Java ab

Angenommen, Sie möchten die Attribute und Werte eines Fuga-Tags aus einer XML-Datei wie der folgenden abrufen.

<?xml version="1.0" encoding="UTF-8" ?>
<hoge>
  <fuga id="1" name="tarou" age="20" gender="male">example</fuga>
</hoge>

Ich möchte wie folgt ausgeben


id,1
name,tarou
age,20
gender,male

Es kann mit dem folgenden Code ausgegeben werden

python


package example;

import java.io.File;

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

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;

public class example {
	public static void main(String[] args) {
		try {
			DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
			DocumentBuilder builder = factory.newDocumentBuilder();
			Document doc = builder.parse(new File("example.xml"));
			Element hoge = doc.getDocumentElement();
			NodeList fugaList = hoge.getChildNodes();

			for(int i=0; i<fugaList.getLength(); i++) {
				Node fuga = fugaList.item(i);
				if(fuga.getNodeType()==Node.ELEMENT_NODE) {
					//Holen Sie sich nun die Liste der Attribute
					NamedNodeMap nnm = fuga.getAttributes();
					for(int j=0; j<nnm.getLength(); j++) {
						Node fugaNameNode = nnm.item(j);/
                        //Ausgabeattribut und Wert
						System.out.println(fugaNameNode.getNodeName()+","+fugaNameNode.getNodeValue());
					}
				}
			}
		} catch(Exception e) {
			e.printStackTrace();
		}
	}
}

Ergebnis


age,20
gender,male
id,1
name,tarou

Nachtrag

Es scheint, dass die Ausgabereihenfolge nicht übereinstimmt. NamedNodeMap scheint die Bestellung nicht zu garantieren

Recommended Posts

Ruft Attribute und Werte aus einer XML-Datei in Java ab
Subtrahieren Sie Enum-Konstanten von Zeichenfolgen und Werten in Java zurück
[Java] Beispiel eines Programms, das die Maximal- und Minimalwerte von einem Array abruft
[Android-Entwicklung] Holen Sie sich mit Java Bilder vom Server und legen Sie sie in ImageView fest! !!
Holen Sie sich null-sichere Map-Werte in Java
Holen Sie sich ganz einfach Ganzzahlen aus den Systemeigenschaften in Java
Holen Sie sich mit Java eine nicht leere Sammlung aus einem optionalen Stream
Hinweis Nr. 1 "Zählen und Anzeigen doppelter Werte in einem Array" [Java]
So ermitteln Sie die Länge einer Audiodatei mit Java
Abrufen des Verlaufs vom Zabbix-Server in Java
[Java8] Durchsuchen Sie das Verzeichnis und holen Sie sich die Datei
Beim Aufrufen von println usw. aus einer externen Java-Klassendatei in Processing
So erhalten Sie eine Klasse von Element in Java
Erfassen und speichern Sie die Selen-Installation in Java
Holen Sie sich Unixtime (Sekunden) von ZonedDateTime in Scala / Java
[Java] Ruft mehrere Werte von einem Rückgabewert ab
[Java] Ruft Werte zufällig aus einem Array ab
[Android] Holen Sie sich zufällige Schlüssel und Werte von HashMap
Generieren Sie OffsetDateTime aus Clock und LocalDateTime in Java
[Java] KFunction von Method / Constructor in Java abrufen [Kotlin]
[Java] Konvertieren und Importieren von Dateiwerten mit OpenCSV
Formatieren Sie XML in Java
[Java] Holen Sie sich die Datei unabhängig von der Umgebung in das JAR
JSON in Java und Jackson Teil 1 Gibt JSON vom Server zurück
Holen Sie sich EXIF-Informationen in Java
Holen Sie sich Wettervorhersagen von Watson Weather Company Data mit einfachem Java
Implementieren Sie die Java-Schnittstelle in der JRuby-Klasse und rufen Sie sie von Java aus auf
Informationen in einer Instanz abrufen und Zahlen berechnen Standardversion
Was ist in "Java 8 bis Java 11" passiert und wie wird eine Umgebung erstellt?
Korrigieren Sie den Zeichencode in Java und lesen Sie von der URL
Generieren Sie AWS Signature V4 in Java und fordern Sie die API an
Generieren Sie Stream aus einem Array primitiver Typen in Java
Implementieren Sie die XML-Signatur in Java
[Java] Ordnen Sie die Daten des vergangenen Montags und Sonntags der Reihe nach an
[Java] Abrufen von Daten aus der Datenbank mithilfe des Singleton-Dienstes in Spring (Boot)
Nach dem Wechsel zwischen Java 8 und 11 tritt bei der Bestätigung ein Fehler auf
[Java] So konvertieren Sie vom Typ String in den Pfadtyp und erhalten den Pfad
Lesen Sie die Java-Eigenschaftendatei in C #
Generieren Sie HashMap aus einer XML-Ressourcendatei
Beispiel für Codierung und Decodierung in Java
Land von IP-Adresse abrufen (Java)
Java-Argumente, Rückgabewerte und Überladungen
Führen Sie eine Batchdatei von Java aus
Entpacken Sie die Zip-Datei in Java
[Java] Deklarieren und initialisieren Sie ein Array
Versuchen Sie einen If-Ausdruck in Java
Protokollausgabe in Datei in Java
StringBuffer- und StringBuilder-Klasse in Java
Schreiben Sie Schlüssel und Werte in Ruby
Verstehe gleich und hashCode in Java
Ich habe eine Anmerkung in Java gemacht.
Informationen zur Dateikopierverarbeitung in Java
Bleiben Sie in einem Java Primer stecken
Hallo Welt in Java und Gradle
Führen Sie einen externen Prozess in Java aus
JSON in Java und Jackson Teil ③ Betten Sie JSON in HTML ein und verwenden Sie es aus JavaScript
Beispielcode zum Abrufen der wichtigsten JDBC-Typwerte in der Java + H2-Datenbank