Maison Java javaDidacticiel Comment lire des fichiers XML avec Jdom

Comment lire des fichiers XML avec Jdom

Mar 12, 2017 am 09:21 AM

Utilisez Jdom pour lire la méthode de fichier XML Lors de l'apprentissage de Spring, nous voyons souvent beaucoup de fichiers de configuration XML Spring utilise IOC (Control Response) via la configuration dans le fichier. fichier de configuration. (Transfert) pour obtenir une flexibilité de code. Dans cet article, je vais présenter un moyen d'analyser XML --Jdom

Nous allons d'abord sur le site Web de Jdom pour télécharger le JAR correspondant. package et importez-le. Dans notre projet Java, nous écrivons ensuite un fichier XML :

<?xml version="1.0" encoding="UTF-8"?>   
<HD>   
  <disk name="C">   
    <capacity>8G</capacity>   
    <directories>200</directories>   
    <files>1580</files>   
  </disk>   
  
  <disk name="D">   
    <capacity>10G</capacity>   
    <directories>500</directories>   
    <files>3000</files>   
  </disk>   
</HD>
Copier après la connexion
Ensuite, nous pouvons utiliser Jdom pour lire les informations de configuration en XML. Notre classe Java est la suivante :

<. 🎜>

Il doit y avoir plusieurs façons de lire XML. C'est juste pour que tout le monde le sache. Si vous avez une meilleure façon ou méthode, j'espère que vous pourrez m'apprendre. Merci
public class Jdom {
    
    public static void main(String[] args) {
        try {
            readXml();
        } catch (JDOMException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
    public static void readXml() throws JDOMException, IOException{
        SAXBuilder saxBuilder = new SAXBuilder();
        Document doc = saxBuilder.build(Jdom.class.getClassLoader().getResourceAsStream("test.xml"));
        Element root = doc.getRootElement();//获得xml的根元素
        List<Element> list = root.getChildren("disk");//获得根元素下的子孩子
        for(Element element : list){
            String name = element.getAttributeValue("name");//取disk元素的name值   
            String capacity = element.getChildText("capacity");//取disk子元素capacity的内容   
            String directories = element.getChildText("directories");//取disk子元素directories的内容      
            String files = element.getChildText("files");//取disk子元素files的内容      
            System.out.println("磁盘信息:");   
            System.out.println("分区盘符:"+name);   
               System.out.println("分区容量:"+capacity);   
               System.out.println("目录数:"+directories);   
               System.out.println("文件数:"+files);   
               System.out.println("-----------------------------------");
        }
    }

}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Dans le débogage à distance Java, comment obtenir correctement des valeurs constantes sur les serveurs distants? Dans le débogage à distance Java, comment obtenir correctement des valeurs constantes sur les serveurs distants? Apr 19, 2025 pm 01:54 PM

Questions et réponses sur l'acquisition constante dans le débogage à distance Java Lors de l'utilisation de Java pour un débogage à distance, de nombreux développeurs peuvent rencontrer des phénomènes difficiles. Il...

En développement arrière, comment distinguer les responsabilités de la couche de service et de la couche DAO? En développement arrière, comment distinguer les responsabilités de la couche de service et de la couche DAO? Apr 19, 2025 pm 01:51 PM

Discuter de l'architecture hiérarchique dans le développement back-end. Dans le développement back-end, l'architecture hiérarchique est un modèle de conception courant, y compris généralement le contrôleur, le service et les trois couches DAO ...

Comment convertir les noms en nombres pour implémenter le tri au sein des groupes? Comment convertir les noms en nombres pour implémenter le tri au sein des groupes? Apr 19, 2025 pm 01:57 PM

Comment convertir les noms en nombres pour implémenter le tri au sein des groupes? Lors du tri des utilisateurs en groupes, il est souvent nécessaire de convertir le nom de l'utilisateur en numéros afin qu'il puisse être différent ...

Que dois-je faire si une interface tierce est appelée dans le projet Spring Boot, et que le cas de nom de champ et la méthode Getter sont incohérents, entraînant une défaillance de transmission des données? Que dois-je faire si une interface tierce est appelée dans le projet Spring Boot, et que le cas de nom de champ et la méthode Getter sont incohérents, entraînant une défaillance de transmission des données? Apr 19, 2025 pm 02:03 PM

Les difficultés rencontrées lors de l'appel des interfaces tierces pour transmettre des données dans le projet Springboot seront utilisées pour un ressort ...

Pourquoi signale-t-il une erreur lors de la soumission d'un travail de pyflink sur le fil? Pourquoi signale-t-il une erreur lors de la soumission d'un travail de pyflink sur le fil? Apr 19, 2025 pm 02:06 PM

Analyse de la raison pour laquelle le script Python ne peut être trouvé lors de la soumission d'un travail de pyflink sur le fil lorsque vous essayez de soumettre un travail de pyflink via le fil, vous pouvez rencontrer ...

Comment modifier dynamiquement le paramètre SavePath de @Excel Annotation dans Easypoi lorsque le projet commence en Java? Comment modifier dynamiquement le paramètre SavePath de @Excel Annotation dans Easypoi lorsque le projet commence en Java? Apr 19, 2025 pm 02:09 PM

Comment configurer dynamiquement les paramètres des annotations de classe d'entité en Java pendant le processus de développement, nous rencontrons souvent la nécessité de configurer dynamiquement les paramètres d'annotation en fonction de différents environnements ...

See all articles