锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产99在线|亚洲,亚洲AV日韩AV永久无码免下载,亚洲五月激情综合图片区http://m.tkk7.com/zhhp1314520/category/16151.htmlzh-cnFri, 23 Mar 2007 05:04:19 GMTFri, 23 Mar 2007 05:04:19 GMT60閲囩敤org.w3c.dom榪涜XML鎿嶄綔(涓)錛堣漿杞斤級(jí)http://m.tkk7.com/zhhp1314520/articles/orgw3cdom1.html鎹曢鎹曢Thu, 22 Mar 2007 06:59:00 GMThttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom1.htmlhttp://m.tkk7.com/zhhp1314520/comments/105562.htmlhttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom1.html#Feedback0http://m.tkk7.com/zhhp1314520/comments/commentRss/105562.htmlhttp://m.tkk7.com/zhhp1314520/services/trackbacks/105562.html 閲囩敤org.w3c.dom榪涜XML鎿嶄綔(涓)
聽(tīng)

XMLBuilder.java

聽(tīng)鐢ㄤ簬鍒涘緩錛わ集錛紝Root緇撶偣

/********************************************************************
聽(tīng)* 欏圭洰鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 鍖呭悕縐奧?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc.xml.oper聽(tīng)<p>
聽(tīng)* 鏂囦歡鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歑mlBuilder聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鑰?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歭uoc聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鏃ユ湡聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?005-6-22聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 紼嬪簭鍔熻兘錛堢被錛夋弿榪奧狅細(xì)聽(tīng)鏍規(guī)嵁浼犲叆鐨刋ML鏂囦歡鐢熸垚Document鍜宺oot緇撶偣<p>
聽(tīng)*
聽(tīng)* 紼嬪簭鍙樻洿鏃ユ湡聽(tīng)聽(tīng)聽(tīng)錛?br />聽(tīng)* 鍙樻洿浣滆吢?tīng)聽(tīng)聽(tīng)聽(tīng)锛?xì)
聽(tīng)* 鍙樻洿璇存槑聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?br />********************************************************************/
package rochoc.xml.oper;

import java.io.File;
import java.io.IOException;

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

import org.apache.log4j.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.SAXException;

/**
聽(tīng)* 綾誨悕錛歑mlBuilder聽(tīng) <p>
聽(tīng)* 綾繪弿榪幫細(xì)鏍規(guī)嵁浼犲叆鐨刋ML鏂囦歡鐢熸垚Document鍜宺oot緇撶偣 <p>
聽(tīng)* 緙栧啓鑰?錛歭uoc<p>
聽(tīng)* 緙栧啓鏃ユ湡 錛?005-6-22<p>
聽(tīng)* 涓昏public鎴愬憳鍙橀噺錛?lt;p>
聽(tīng)* 涓昏public鏂規(guī)硶錛毬?tīng)?<p>
聽(tīng)**/

public class XmlBuilder
{
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鏋勯犲嚱鏁拌鏄庯細(xì)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鍙傛暟璇存槑錛欯param path聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public XmlBuilder(String path)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.path=path;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) init();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歩nit<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬垵濮嬪寲鍑芥暟<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛?<p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public void init()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) buildDocument();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) buildRoot();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歜uildDocument<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬皢XML鏂囦歡鐢熸垚Document <p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛?<p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) private void buildDocument()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) try
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) DocumentBuilder builder=factory.newDocumentBuilder();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("Construct document builder success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) doc=builder.parse(new File(path));聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("Build xml document success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(ParserConfigurationException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Construct document builder error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(SAXException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Parse xml file error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(IOException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Read xml file error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歜uildRoot<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氱敓鎴怷ML鐨勬牴緇撶偣<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛?<p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) private void buildRoot()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) root=doc.getDocumentElement();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @return 榪斿洖 doc銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public Document getDoc()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return doc;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @param doc 瑕佽緗殑 doc銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public void setDoc(Document doc)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.doc = doc;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @return 榪斿洖 path銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public String getPath()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return path;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @param path 瑕佽緗殑 path銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public void setPath(String path)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.path = path;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @return 榪斿洖 root銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public Element getRoot()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return root;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @param root 瑕佽緗殑 root銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public void setRoot(Element root)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.root = root;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /*鍏ㄥ眬鍙橀噺*/
聽(tīng)聽(tīng)聽(tīng) private String path=null;//xml鏂囦歡璺緞
聽(tīng)聽(tīng)聽(tīng) private Document doc=null;//xml鏂囦歡瀵瑰簲鐨刣ocument
聽(tīng)聽(tīng)聽(tīng) private Element root=null;//xml鏂囦歡鐨勬牴緇撶偣
聽(tīng)聽(tīng)聽(tīng) private Logger logger=Logger.getLogger(getClass().getName());
}



鎹曢 2007-03-22 14:59 鍙戣〃璇勮
]]>
閲囩敤org.w3c.dom榪涜XML鎿嶄綔(浜?錛堣漿杞斤級(jí)http://m.tkk7.com/zhhp1314520/articles/orgw3cdom2.html鎹曢鎹曢Thu, 22 Mar 2007 06:56:00 GMThttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom2.htmlhttp://m.tkk7.com/zhhp1314520/comments/105560.htmlhttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom2.html#Feedback0http://m.tkk7.com/zhhp1314520/comments/commentRss/105560.htmlhttp://m.tkk7.com/zhhp1314520/services/trackbacks/105560.html 閲囩敤org.w3c.dom榪涜XML鎿嶄綔(浜?
聽(tīng)

XmlOper.java

聽(tīng)鐢ㄤ簬鎿嶄綔錛革輯錛枃浠訛紝鍖呮嫭鏌ユ壘銆佹柊澧炪佸垹闄ゃ佷慨鏀圭粨鐐?/p>

聽(tīng)/********************************************************************
聽(tīng)* 欏圭洰鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 鍖呭悕縐奧?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc.xml.oper聽(tīng)<p>
聽(tīng)* 鏂囦歡鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歑mlOper聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鑰?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歭uoc聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鏃ユ湡聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?005-6-22聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 紼嬪簭鍔熻兘錛堢被錛夋弿榪奧狅細(xì)聽(tīng)瀵筙ML榪涜璇誨啓鎿嶄綔聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)*
聽(tīng)* 紼嬪簭鍙樻洿鏃ユ湡聽(tīng)聽(tīng)聽(tīng)錛?br />聽(tīng)* 鍙樻洿浣滆吢?tīng)聽(tīng)聽(tīng)聽(tīng)锛?xì)
聽(tīng)* 鍙樻洿璇存槑聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?br />********************************************************************/
package rochoc.xml.oper;

import java.util.ArrayList;

import org.apache.log4j.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

/**
聽(tīng)* 綾誨悕錛歑mlOper聽(tīng) <p>
聽(tīng)* 綾繪弿榪幫細(xì)瀵筙ML鏂囦歡榪涜璇誨啓鎿嶄綔,鍧囦負(fù)闈?rùn)鎬佸嚱鏁?<p>
聽(tīng)* 緙栧啓鑰?錛歭uoc<p>
聽(tīng)* 緙栧啓鏃ユ湡 錛?005-6-22<p>
聽(tīng)* 涓昏public鎴愬憳鍙橀噺錛?lt;p>
聽(tīng)* 涓昏public鏂規(guī)硶錛毬?tīng)?<p>
聽(tīng)**/

public class XmlOper
{
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鏋勯犲嚱鏁拌鏄庯細(xì)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鍙傛暟璇存槑錛毬?tīng)?<p>
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) private XmlOper()
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歡etNodeList<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳幏鍙栫埗緇撶偣parent鐨勬墍鏈夊瓙緇撶偣<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯return <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歂odeList <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static NodeList getNodeList(Element parent)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return parent.getChildNodes();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歡etElementsByName<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪鐖剁粨鐐逛腑鏌ヨ鎸囧畾鍚嶇О鐨勭粨鐐歸泦聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param name
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯return <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛欵lement[] <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static Element [] getElementsByName(Element parent,String name)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ArrayList resList=new ArrayList();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) NodeList nl=getNodeList(parent);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) for(int i=0;i<nl.getLength();i++)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Node nd=nl.item(i);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if(nd.getNodeName().equals(name))
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) resList.add(nd);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element [] res=new Element [resList.size()];
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) for(int i=0;i<resList.size();i++)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) res[0]=(Element)resList.get(i);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug(parent.getNodeName()+"'s children of "+name+
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) "'s num:"+res.length);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return res;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歡etElementName<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳幏鍙栨寚瀹欵lement鐨勫悕縐奧犅?tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)?<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param element
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯return <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歋tring <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static String getElementName(Element element)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return element.getNodeName();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歡etElementValue<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳幏鍙栨寚瀹欵lement鐨勫?lt;p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param element
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯return <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歋tring <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static String getElementValue(Element element)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) NodeList nl=element.getChildNodes();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) for(int i=0;i<nl.getLength();i++)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if(nl.item(i).getNodeType()==Node.TEXT_NODE)//鏄竴涓猅ext Node
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug(element.getNodeName()+" has a Text Node.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return element.getFirstChild().getNodeValue();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error(element.getNodeName()+" hasn't a Text Node.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return null;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歡etElementAttr<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳幏鍙栨寚瀹欵lement鐨勫睘鎬ttr鐨勫悸?tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)?<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param element
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param attr
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯return <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歋tring <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static String getElementAttr(Element element,String attr)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return element.getAttribute(attr);
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歴etElementValue<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳緗寚瀹欵lement鐨勫悸?tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)?<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param element
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param val <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void setElementValue(Element element,String val)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Node node=element.getOwnerDocument().createTextNode(val);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) NodeList nl=element.getChildNodes();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) for(int i=0;i<nl.getLength();i++)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Node nd=nl.item(i);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if(nd.getNodeType()==Node.TEXT_NODE)//鏄竴涓猅ext Node
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) nd.setNodeValue(val);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("modify "+element.getNodeName()+"'s node value succe.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("new "+element.getNodeName()+"'s node value succe.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) element.appendChild(node);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歴etElementAttr<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氳緗粨鐐笶lement鐨勫睘鎬?lt;p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param element
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param attr
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param attrVal <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void setElementAttr(Element element,
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) String attr,String attrVal)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) element.setAttribute(attr,attrVal);
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歛ddElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent涓嬪鍔犵粨鐐筩hild<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param child <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void addElement(Element parent,Element child)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.appendChild(child);
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歛ddElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent涓嬪鍔犲瓧絎︿覆tagName鐢熸垚鐨勭粨鐐?lt;p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param tagName <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void addElement(Element parent,String tagName)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Document doc=parent.getOwnerDocument();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element child=doc.createElement(tagName);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.appendChild(child);
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歛ddElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent涓嬪鍔爐agName鐨凾ext緇撶偣錛屼笖鍊間負(fù)text<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param tagName
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param text <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void addElement(Element parent,String tagName,String text)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Document doc=parent.getOwnerDocument();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element child=doc.createElement(tagName);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) setElementValue(child,text);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.appendChild(child);
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歳emoveElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬皢鐖剁粨鐐筽arent涓嬬殑鍚嶇О涓簍agName鐨勭粨鐐圭Щ闄?lt;p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param tagName <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public static void removeElement(Element parent,String tagName)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" begin...");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) NodeList nl=parent.getChildNodes();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) for(int i=0;i<nl.getLength();i++)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Node nd=nl.item(i);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if(nd.getNodeName().equals(tagName))
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.removeChild(nd);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("remove child '"+nd+"' success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" end.");
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /*鍏ㄥ眬鍙橀噺*/聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) static Logger logger=Logger.getLogger("XmlOper");
}



鎹曢 2007-03-22 14:56 鍙戣〃璇勮
]]>
閲囩敤org.w3c.dom榪涜XML鎿嶄綔(涓? (杞澆)http://m.tkk7.com/zhhp1314520/articles/orgw3cdom.html鎹曢鎹曢Thu, 22 Mar 2007 06:50:00 GMThttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom.htmlhttp://m.tkk7.com/zhhp1314520/comments/105559.htmlhttp://m.tkk7.com/zhhp1314520/articles/orgw3cdom.html#Feedback0http://m.tkk7.com/zhhp1314520/comments/commentRss/105559.htmlhttp://m.tkk7.com/zhhp1314520/services/trackbacks/105559.html 閲囩敤org.w3c.dom榪涜XML鎿嶄綔(涓?
聽(tīng)

XmlCreater.java

聽(tīng)鐢ㄤ簬鍒涘緩錛革輯錛枃浠?/p>

/********************************************************************
聽(tīng)* 欏圭洰鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 鍖呭悕縐奧?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歳ochoc.xml.oper聽(tīng)<p>
聽(tīng)* 鏂囦歡鍚嶇О聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歑mlCreater聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鑰?聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛歭uoc聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 緙栧啓鏃ユ湡聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?005-6-22聽(tīng)聽(tīng)聽(tīng)聽(tīng)<p>
聽(tīng)* 紼嬪簭鍔熻兘錛堢被錛夋弿榪奧狅細(xì)聽(tīng)鍒涘緩DOM騫剁敓鎴怷ML鏂囦歡聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)*
聽(tīng)* 紼嬪簭鍙樻洿鏃ユ湡聽(tīng)聽(tīng)聽(tīng)錛?br />聽(tīng)* 鍙樻洿浣滆吢?tīng)聽(tīng)聽(tīng)聽(tīng)锛?xì)
聽(tīng)* 鍙樻洿璇存槑聽(tīng)聽(tīng)聽(tīng)聽(tīng)錛?br />********************************************************************/
package rochoc.xml.oper;

import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.apache.log4j.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

/**
聽(tīng)* 綾誨悕錛歑mlCreater聽(tīng) <p>
聽(tīng)* 綾繪弿榪幫細(xì) 鍒涘緩DOM騫剁敓鎴怷ML鏂囦歡<p>
聽(tīng)* 緙栧啓鑰?錛歭uoc<p>
聽(tīng)* 緙栧啓鏃ユ湡 錛?005-6-22<p>
聽(tīng)* 涓昏public鎴愬憳鍙橀噺錛?lt;p>
聽(tīng)* 涓昏public鏂規(guī)硶錛毬?tīng)?<p>
聽(tīng)**/

public class XmlCreater
{
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鏋勯犲嚱鏁拌鏄庯細(xì)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng)聽(tīng) *鍙傛暟璇存槑錛欯param path聽(tīng) xml鏂囦歡璺緞 <p>
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public XmlCreater(String path)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.path=path;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) init();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歩nit<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛?鍒濆鍖栧嚱鏁奧犅?tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)?<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛?<p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) private void init()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) try
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) DocumentBuilder builder=factory.newDocumentBuilder();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) doc=builder.newDocument();//鏂板緩DOM
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(ParserConfigurationException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Parse DOM builder error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歝reateRootElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬垱寤烘牴緇撶偣錛屽茍榪斿洖聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param rootTagName <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛欵lement <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public Element createRootElement(String rootTagName)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if(doc.getDocumentElement()==null)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("create root element '"+rootTagName+"' success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element root=doc.createElement(rootTagName);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) doc.appendChild(root);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return root;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.warn("this dom's root element is exist,create fail.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return doc.getDocumentElement();
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歝reateElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent緇撶偣涓嬪鍔犲瓙緇撶偣tagName<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param tagName <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛欵lement <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public Element createElement(Element parent,String tagName)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Document doc=parent.getOwnerDocument();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element child=doc.createElement(tagName);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.appendChild(child);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return child;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歝reateElement<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent緇撶偣涓嬪鍔犲間負(fù)value鐨勫瓙緇撶偣tabName<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param tagName
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param value <p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛欵lement <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public Element createElement(Element parent,String tagName,String value)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Document doc=parent.getOwnerDocument();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Element child=doc.createElement(tagName);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) XmlOper.setElementValue(child,value);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) parent.appendChild(child);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return child;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歝reateAttribute<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氬湪parent緇撶偣涓嬪鍔犲睘鎬?<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param parent
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param attrName 灞炴у悕
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛欯param attrValue 灞炴у?lt;p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public void createAttribute(Element parent,String attrName,String attrValue)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) XmlOper.setElementAttr(parent,attrName,attrValue);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍚嶇О錛歜uildXmlFile<p>
聽(tīng)聽(tīng)聽(tīng) * 鏂規(guī)硶鍔熻兘錛氭牴鎹瓺OM鐢熸垚XML鏂囦歡<p>
聽(tīng)聽(tīng)聽(tīng) * 鍙傛暟璇存槑錛?<p>
聽(tīng)聽(tīng)聽(tīng) * 榪斿洖錛歷oid <p>
聽(tīng)聽(tīng)聽(tīng) * 浣滆咃細(xì)luoc
聽(tīng)聽(tīng)聽(tīng) * 鏃ユ湡錛?005-6-22
聽(tīng)聽(tīng)聽(tīng) **/
聽(tīng)聽(tīng)聽(tīng) public void buildXmlFile()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) TransformerFactory tfactory=TransformerFactory.newInstance();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) try
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) Transformer transformer=tfactory.newTransformer();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) DOMSource source=new DOMSource(doc);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("New DOMSource success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) StreamResult result=new StreamResult(new File(path));
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("New StreamResult success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) transformer.setOutputProperty("encoding","GBK");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) transformer.transform(source,result);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.debug("Build XML File '"+path+"' success.");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(TransformerConfigurationException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Create Transformer error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }catch(TransformerException e)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) logger.error("Transformer XML file error:"+e);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @return 榪斿洖 doc銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public Document getDoc()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return doc;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @param doc 瑕佽緗殑 doc銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public void setDoc(Document doc)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.doc = doc;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @return 榪斿洖 path銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public String getPath()
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) return path;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /**
聽(tīng)聽(tīng)聽(tīng)聽(tīng) * @param path 瑕佽緗殑 path銆?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng) */
聽(tīng)聽(tīng)聽(tīng) public void setPath(String path)
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) this.path = path;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) /*鍏ㄥ眬鍙橀噺*/
聽(tīng)聽(tīng)聽(tīng) private Logger logger = Logger.getLogger(getClass().getName());
聽(tīng)聽(tīng)聽(tīng) private Document doc=null;//鏂板垱寤虹殑DOM
聽(tīng)聽(tīng)聽(tīng) private String path=null;//鐢熸垚鐨刋ML鏂囦歡緇濆璺緞
}



鎹曢 2007-03-22 14:50 鍙戣〃璇勮
]]>
DOM4J浣跨敤鎬葷粨http://m.tkk7.com/zhhp1314520/articles/dom4j_study.html鎹曢鎹曢Thu, 12 Oct 2006 02:23:00 GMThttp://m.tkk7.com/zhhp1314520/articles/dom4j_study.htmlhttp://m.tkk7.com/zhhp1314520/comments/74728.htmlhttp://m.tkk7.com/zhhp1314520/articles/dom4j_study.html#Feedback0http://m.tkk7.com/zhhp1314520/comments/commentRss/74728.htmlhttp://m.tkk7.com/zhhp1314520/services/trackbacks/74728.html闃呰鍏ㄦ枃

鎹曢 2006-10-12 10:23 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲中文字幕无码久久2020| 亚洲一级特黄大片无码毛片| 久久丫精品国产亚洲av| 国产一级一片免费播放| 亚洲色偷偷偷综合网| 无码人妻久久一区二区三区免费丨| 亚洲电影在线播放| 青青在线久青草免费观看| 7777久久亚洲中文字幕| 成人性生交视频免费观看| 亚洲AV无码精品国产成人| 美女黄网站人色视频免费国产| 亚洲精品中文字幕| 亚洲国产精品无码久久久久久曰| h片在线播放免费高清| 亚洲综合熟女久久久30p| 久久精品一区二区免费看| 亚洲综合在线成人一区| 成人免费a级毛片| 青青视频免费在线| 亚洲精品乱码久久久久久| 97在线视频免费播放| 亚洲日本在线电影| 亚洲国产小视频精品久久久三级 | 亚洲精品一二三区| 国内精品免费久久影院| 久久亚洲国产视频| 国语成本人片免费av无码| 亚洲av综合日韩| 国产一卡二卡3卡四卡免费| 亚洲aⅴ无码专区在线观看| 亚洲精品二区国产综合野狼| 精品无码免费专区毛片| 羞羞视频免费观看| 亚洲Av永久无码精品三区在线| 免费一级毛片在线播放视频免费观看永久| 久久夜色精品国产亚洲av| 69xx免费观看视频| 亚州**色毛片免费观看| 亚洲精品日韩专区silk| 亚洲黄黄黄网站在线观看|