ホームページ  >  記事  >  バックエンド開発  >  XML 解析 Java の基本の詳細な紹介

XML 解析 Java の基本の詳細な紹介

黄舟
黄舟オリジナル
2017-03-18 16:55:041304ブラウズ

dom4j は Java XML API であり、jdom に似ており、XML ファイルの読み書きに使用されます。 dom4j は、優れたパフォーマンス、強力な機能、そして非常に使いやすい非常に優れた Java XML API であり、SourceForge で見つけることができます。パフォーマンス、機能性、使いやすさの点で、dom4j はあらゆる面で優れています。最近では、同じく Dom4j を使用する Sun 独自の JAXM を含む Hibernate など、XML の読み書きに dom4j を使用する Java ソフトウェアがますます増えていることがわかります。
Dom4j を使用して開発するには、dom4j の対応する jar ファイルをダウンロードする必要があります

  1. dom4j の対応する jar ファイルをダウンロードします

    2.dom4j はsourceforge.net のオープンソース プロジェクトなので、http:/ にアクセスできます。 /sourceforge.net/projects/dom4j 最新バージョンをダウンロードします。
    ダウンロードした zip ファイルを解凍した後の効果は次のとおりです:

dom4j-1.6.1 の解凍されたファイルを開きます

ここで、docs が含まれるフォルダーが表示されます。また、dom4j を使用して XML ファイルの dom4j-1.6.1.jar ファイルを解析する必要もあります。開発するプロジェクトに dom4j-1.6.1.jar ファイルをビルドするだけで、その後 dom4j を使用して開発できます。
以下では、次のように Myeclipse を使用して Java プロジェクトを作成します: 例: まず、デモ プロジェクトを作成し、デモ プロジェクト内に lib ファイルを作成し、dom4j-1.6.1.jar ファイルを lib にコピーしてから右に進みます。 - dom4j-1.6.1jar ファイルをクリックします
[ビルド パスに追加] をクリックしてビルドし、プロジェクトに移動します。
注: Web プロジェクトを開発している場合は、それを web-inf/lib にコピーするだけで済みます。 Web プロジェクトに自動的に組み込まれます。
プロジェクト開発のプロセスでは、docs フォルダー (ヘルプ ドキュメント) を参照し、index.html を見つけて開き、[クイック スタート] をクリックして、ヘルプ ドキュメントを通じて dom4j の XML 解析を学習できます。 API で重要だと思われるメソッドを以下に翻訳して説明します。

一、DOM4j では、Document
オブジェクト
を取得する方法は 3 つあります。
1. XML ファイルを読み取り、ドキュメントを取得します。オブジェクト

 SAXReader reader = new SAXReader();                
       Document   document = reader.read(new File("csdn.xml"));
E

2. ノードオブジェクトの操作方法。

  String text = "<csdn></csdn>";              
                  Document document = DocumentHelper.parseText(text);
E

III. 変換

 Document document = DocumentHelper.createDocument();             //创建根节点  
                 Element root = document.addElement("csdn");

6. Case (sida.xml ファイルを解析し、それに対して curd 操作を実行します)

1.sida.xml は以下のような有名な作品の動作を記述しています

1.获取文档的根节点.  
      Element root = document.getRootElement();  
    2.取得某个节点的子节点.  
      Element element=node.element(“四大名著");  
    3.取得节点的文字  
        String text=node.getText();  
    4.取得某节点下所有名为“csdn”的子节点,并进行遍历.  
       List nodes = rootElm.elements("csdn");   
         for (Iterator it = nodes.iterator(); it.hasNext();) {     
      Element elm = (Element) it.next();    
    // do something   }  
     5.对某节点下的所有子节点进行遍历.      
      for(Iterator it=root.elementIterator();it.hasNext();){        
        Element element = (Element) it.next();        
       // do something    }  
    6.在某节点下添加子节点  
      Element elm = newElm.addElement("朝代");  
    7.设置节点文字.  elm.setText("明朝");  
    8.删除某节点.//childElement是待删除的节点,parentElement是其父节点  parentElement.remove(childElment);  
    9.添加一个CDATA节点.Element contentElm = infoElm.addElement("content");contentElm.addCDATA(“cdata区域”);

2. 解析テスト動作

1.取得某节点下的某属性    Element root=document.getRootElement();        //属性名name  
         Attribute attribute=root.attribute("id");  
    2.取得属性的文字  
    String text=attribute.getText();  
    3.删除某属性 Attribute attribute=root.attribute("size"); root.remove(attribute);  
    4.遍历某节点的所有属性     
      Element root=document.getRootElement();        
       for(Iterator it=root.attributeIterator();it.hasNext();){          
           Attribute attribute = (Attribute) it.next();           
           String text=attribute.getText();          
           System.out.println(text);    
  }  
    5.设置某节点的属性和文字.   newMemberElm.addAttribute("name", "sitinspring");  
    6.设置属性的文字   Attribute attribute=root.attribute("name");   attribute.setText("csdn");

実行効果を観察するために、コードの一部に適切に注釈を付けて、繰り返し練習してください。 dom4j についてよりよく理解できるようになります

7. 文字列と XML の変換の場合

1.文档中全为英文,不设置编码,直接写入的形式.    
       XMLWriter writer = new XMLWriter(new  FileWriter("ot.xml"));   
       writer.write(document);    
       writer.close();  
    2.文档中含有中文,设置编码格式写入的形式.  
       OutputFormat format = OutputFormat.createPrettyPrint();// 创建文件输出的时候,自动缩进的格式                    
       format.setEncoding("UTF-8");//设置编码  
       XMLWriter writer = new XMLWriter(newFileWriter("output.xml"),format);  
       writer.write(document);  
       writer.close();

control + マウスの左ボタン

F3 関連するクラスに直接ジャンプ F2 クラスの詳細を表示

control + o すべて表示

現在のクラスのコンストラクター

debug:

F5 処理関数を入力します F6 次のステップ F8 次のブレークポイントに直接移動します

1.将字符串转化为XML  
      String text = "<csdn> <java>Java班</java></csdn>";  
      Document document = DocumentHelper.parseText(text);  
    2.将文档或节点的XML转化为字符串.  
       SAXReader reader = new SAXReader();  
       Document   document = reader.read(new File("csdn.xml"));              
       Element root=document.getRootElement();      
       String docXmlText=document.asXML();  
       String rootXmlText=root.asXML();  
       Element memberElm=root.element("csdn");  
       String memberXmlText=memberElm.asXML();

以上がXML 解析 Java の基本の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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