के आंतरिक टेक्स्ट को प्रतिस्थापित करना सबसे पहले यह सी # है। मैं एनएचएस में सहयोगियों के एक छोटे समूह के लिए एक इंटरनेट डैशबोर्ड बना रहा हूं। नीचे एक उदाहरण xml फ़ाइल है जिसमें मुझे आंतरिक टेक्स्ट बदलने की आवश्यकता है। मुझे एक विशिष्ट तत्व को प्रतिस्थापित करने की आवश्यकता है उदाहरण के लिए "कार्यशाला 1।" चूंकि हमारे पास कुछ कार्यशालाएं हैं, इसलिए मैं एक सामान्य लेखक का उपयोग नहीं कर सकता क्योंकि यह XML दस्तावेज़ पर सभी जानकारी को नीचे दिए गए कोड के साथ बदल देगा।एक्सएमएल नोड/तत्व
<?xml version="1.0" ?>
<buttons>
<workshop1>hello</workshop1>
<url1>www.google.co.uk</url1>
मैं एक स्विच मामले उपयोग कर रहा हूँ एक विशिष्ट कार्यशाला जहां नाम बदल सकते हैं और कार्यशाला का URL जोड़ सकते हैं का चयन करने के लिए और नीचे इस कोड का उपयोग पूरे दस्तावेज़ की जगह लेगा।
public void XMLW()
{
XmlTextReader reader = new XmlTextReader("C:\\myXmFile.xml");
XmlDocument doc = new XmlDocument();
switch (comboBox1.Text)
{
case "button1":
doc.Load(reader); //Assuming reader is your XmlReader
doc.SelectSingleNode("buttons/workshop1").InnerText = textBox1.Text;
reader.Close();
doc.Save(@"C:\myXmFile.xml");
break;
}
}
तो बस स्पष्ट करने के लिए मैं XML दस्तावेज के माध्यम से खोज करने के लिए मेरी सी # कार्यक्रम तत्व "Workshop1" खोजने के लिए और एक पाठ बॉक्स से पाठ के साथ innerText की जगह चाहते हैं। और पूरे दस्तावेज़ को एक नोड के साथ बदले बिना इसे सहेजने में सक्षम हो। तलाश के लिए धन्यवाद।
क्या कोई कारण है कि आप 'XDocument' या कम से कम' XmlDocument' API का उपयोग नहीं कर रहे हैं? यदि आपको * विशाल * एक्सएमएल फाइलों को संसाधित करना है तो आप आमतौर पर केवल 'XmlReader'/'XmlWriter' का उपयोग करते हैं। –
ठीक है मैं सी # में एक नौसिखिया हूँ। तो सामान्य प्रोग्राम चलाने के लिए मैं एक साथ कोड को दबा रहा हूं और फिर जब मैं इसे देख सकता हूं तो मैं इसे और अधिक कुशल बनाने के लिए कोड बदल सकता हूं। कम से कम इस तरह से मैं चीजों को करने और दोनों के फायदे समझने के बदसूरत और साफ तरीके के बीच अंतर सीख सकता हूं। हालांकि आपके मार्गदर्शन के लिए धन्यवाद, मैं अब XMLReader/XMLWriter का उपयोग करने के लिए देखता हूं। – Marshal
मेरी सलाह 'XmlReader'/'XmlWriter' का उपयोग नहीं करना था ... –