Friday, 15 June 2012

java - Given a Node, how can I select the equivalent Node in a Document? -


मेरा कॉलर मुझे एक org.w3c.dom.Node और एक संगठन सौंप रहा है .w3c.dom.Document इसके रूप में कार्य करता है आपूर्ति की गई नोड , दूसरे शब्दों में, प्रदान की गई दस्तावेज़ में parented होने की गारंटी है, और नोड उस दस्तावेज़ < / कोड> जिसके विरुद्ध कुछ काम किया जाना चाहिए।

अब मैं ऐसी स्थिति में हूं जहां मुझे दस्तावेज़ को क्लोन करने की आवश्यकता है (मुझे संशोधनों को करने की आवश्यकता है, और इसे संशोधित नहीं किया जा सकता है स्रोत।)

जाहिर है, अगर मैं ऐसा करता हूँ, तो नोड मेरे हाथ में अब भी नया दस्तावेज़ के क्लोन से उत्पन्न नहीं है । अब मैंने क्लोन <कोड> दस्तावेज़ में चयन को प्रभावी ढंग से खो दिया है।

हालांकि, मुझे पता है कि उस क्लोन वाले दस्तावेज़ में एक नोड होगा नोड के बराबर मेरे हाथ में है मुझे इसे ढूंढने की आवश्यकता है।

यह पूरा करने का सबसे अच्छा तरीका क्या है, पूरे दस्तावेज़ के माध्यम से खेती करने की कमी है और हर एक को बुला रहा है?

I सोचा था कि document.find (myUnparentedNode) कहने का कोई तरीका होगा, लेकिन ऐसा कोई तरीका नहीं है।

आप एक XPath उत्पन्न कर सकते हैं जो पुराने दस्तावेज़ में नोड की स्थिति का वर्णन करता है और फिर उस नए दस्तावेज़ पर लागू होता है। ऐसा करने के तरीकों के लिए देखें।

यदि क्लोनिंग से पहले नोड को संशोधित करना संभव है तो इसे एक अनन्य विशेषता दें जो कि कुछ और (उदाहरण के लिए बेतरतीब ढंग से उत्पन्न) के साथ टकराने वाला नहीं है जिसे आप तब देख सकते हैं क्लोन किए गए दस्तावेज़ में।

अगर इसमें पहले से एक आईडी है, तो इसका उपयोग करें।


No comments:

Post a Comment