0

次の状況でアドバイスをお願いしたいです。商品を含むxmlファイルがあります。商品は在庫がない (この場合は<not-in-stock/>空のタグを使用) または在庫がある (この場合はタグを使用し、タグ<price>value_price</price>は使用しない) ことができます<not-in-stock/>

jspページでデータを編集しようとしています。アイデアは 1 つだけです。要素の価格の値を名前で取得し、値が空の場合は、在庫がない場合に要素の名前を変更します。

より良い決定を知っている場合は、ここに書いてください。

ElementFilter filter=new org.jdom2.filter.ElementFilter("price");
List<Element> elements = new ArrayList<Element>();

 for(Element c : root.getDescendants(filter))
 {
   elements.add(c);
 }

 if(!elements.isEmpty()){
 for(Element elementForUpdate : elements){
     elementForUpdate.setName("not-in-stock");
     elementForUpdate.setText(""); //I dont know value for empty-tag <not-in-stock/>
     XMLOutputter output=new XMLOutputter();
     output.output(doc, new FileOutputStream(file));
 }
 }
4

1 に答える 1

1

ドキュメント オブジェクトからノードを検索<not-in-stock/>し、テキスト/名前を設定/変更して保存する必要があります。

 ElementFilter filter=new org.jdom2.filter.ElementFilter("not-in-stock");
 Element searchElement=null;
 for(Element c:root.getDescendants(filter))
 {
   searchElement=c;
   break;
 }
 if(searchElement!=null){
     searchElement.setName("NewName");
     searchElement.setText("Something is diff");
     XMLOutputter output=new XMLOutputter();
     output.output(doc, new FileOutputStream(file));
 }
于 2012-08-30T15:00:46.427 に答える