tutorial - मैं एक्सएमएल में एम्पर्सेंड से कैसे बचूं ताकि उन्हें HTML में इकाइयों के रूप में प्रस्तुत किया जा सके?




xml tutorial pdf (8)

'&' चरित्र स्वयं एक्सएमएल में एक बचने वाला चरित्र है, इसलिए समाधान इसे और एक यूनिकोड दशमलव समकक्ष 'और' के लिए समतुल्य है जिससे यह सुनिश्चित किया जा सके कि कोई XML पार्सिंग त्रुटियां नहीं हैं। यही है, चरित्र '&' को ' & # 038 के साथ बदलें ; '।

मेरे पास कुछ एक्सएमएल टेक्स्ट है जो मैं एक HTML पेज में प्रस्तुत करना चाहता हूं। इस पाठ में एक एम्पर्सेंड है, जिसे मैं अपनी इकाई प्रतिनिधित्व में प्रस्तुत करना चाहता हूं: &

स्रोत एक्सएमएल में मैं इस एम्पर्सेंड से कैसे बचूं? मैंने कोशिश की & , लेकिन यह वास्तविक ampersand वर्ण ( & ) के रूप में डीकोड किया गया है, जो HTML में अमान्य है

तो मैं इसे इस तरह से बचाना चाहता हूं कि इसे & वेब पेज में जो एक्सएमएल आउटपुट का उपयोग करता है।


एक संबंधित मुद्दा यह है कि XML सामग्री सामग्री को एन्कोड करने के लिए कैसे करें जब ऐसी सामग्री में एम्पर्सेंड होता है - यदि XML एक GET कार्रवाई के साथ सबमिट किए गए यूआरआई का हिस्सा है। (इस तरह के एक एपीआई के ज्ञान को छोड़कर - यह कुछ ऐसा था जो मुझे आज सौदा करना था।) मैंने ऊपर वर्णित सब कुछ करने की कोशिश की, और वास्तव में काम करने वाली एकमात्र चीज %26amp; एम्पर्सेंड के लिए एक्सएमएल-एन्कोडिंग में पहले वर्ण को यूआरएल-एन्कोड करने के लिए %26 की आवश्यकता थी। amp; %26 बाद आवश्यक था क्योंकि यूआरआई का एक्सएमएल भाग एक्सएमएल दस्तावेज़ सर्वर-साइड में लोड किया जा रहा था। तो इस मजेदार परिदृश्य में, दोनों एन्कोडिंग पद्धतियों को एक साथ रखना आवश्यक था।


मेरे मामले में मुझे इसे %26 बदलना पड़ा।

मुझे बचने & यूआरएल में भागने की जरूरत थी। तो & मेरे लिए काम नहीं किया Urlencode फ़ंक्शन बदलता है & %26 । इस प्रकार न तो एक्सएमएल और न ही ब्राउजर यूआरएल तंत्र ने यूआरएल के बारे में शिकायत की।


मैंने कोशिश की है और amp, लेकिन यह काम नहीं किया। विम दस ब्रिंक के जवाब के आधार पर मैंने कोशिश की और यह काम किया।

मेरे साथी डेवलपर्स में से एक ने मुझे सुझाव दिया कि & # x26; और यह इस बात पर ध्यान दिए बिना कि कितनी बार इसे प्रस्तुत किया जा सकता है।


विचार करें कि आपका एक्सएमएल नीचे जैसा दिखता है या नहीं।

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES<>'GCF'
  <Query>
</Employees>

आप <> सीधे इसका उपयोग नहीं कर सकते क्योंकि यह एक त्रुटि फेंकता है। उस स्थिति में, आप &#60;&#62; उस के बदले में।

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES &#60;&#62; 'GCF'
  <Query>
</Employees>

सभी कोड देखने के लिए यहां क्लिक करें


सीडीएटीए टैग?

     <![CDATA[
       This is some text with ampersands & other funny characters. >>
     ]]>


<xsl:text disable-output-escaping="yes">&amp;&nbsp;</xsl:text> चाल करेगा।







xml