XML फ़ाइल को XmlDocument में पढ़ें


103

मैं C # के लिए बहुत नया हूं। मेरे पास XML फ़ाइल (text.xml) है। मैं इसे पढ़ना चाहता हूं XmlDocumentऔर स्ट्रिंग चर में धारा को संग्रहीत करना चाहता हूं ।


1
आप दोनों का आपकी सहायता के लिए धन्यवाद।
AJP

जवाबों:


169

XmlDocument.Load()XML को अपनी फ़ाइल से लोड करने के लिए विधि का उपयोग करें । फिर XmlDocument.InnerXmlXML स्ट्रिंग प्राप्त करने के लिए संपत्ति का उपयोग करें ।

XmlDocument doc = new XmlDocument();
doc.Load("path to your file");
string xmlcontents = doc.InnerXml;

2
XmlDocumentके लिए परिभाषा नहीं है Load
मैट क्लार्क

मैंने इन सभी को अस्वीकार कर दिया क्योंकि उनमें से किसी ने भी काम नहीं किया। जैसा कि यह पता चला है, मैं विंडोजआरटी के लिए विकसित कर रहा हूं, और कॉम्पैक्ट .NET फ्रेमवर्क में इन सुविधाओं का एक बहुत कुछ है। जिनमें से मुझे बहुत सारी चीजें शामिल हैं ... जैसे कि XmlDocument.Load()और स्ट्रीमट्रेडर निर्माताStreamReader(filePath)
मैट क्लार्क

11
@MattClark: मुझे आपका दर्द महसूस होता है - मैं दो साल से सीएफ की योनि और सीमाओं से जूझ रहा हूं - लेकिन यह कोई कारण नहीं है। ओपी ने सीएफ को निर्दिष्ट नहीं किया है, और इसलिए कोई कारण नहीं है कि उत्तरदाता सीएफ को ध्यान में रखेंगे।
बी क्ले शैनन

18

यदि आपका .NET संस्करण 3.0 से अधिक नया है, तो आप System.Xml.Linq.XDocumentइसके बजाय उपयोग करने का प्रयास कर सकते हैं XmlDocument। इसके साथ डेटा प्रोसेस करना आसान है XDocument


3
और यहाँ XDocument का उपयोग करके फ़ाइल लोड करने का तरीका बताया गया है: stackoverflow.com/questions/670563/linq-to-read-xml
ब्रायन लीमिंग

6

आशा है कि आपको Xml.Linq और .net3.5 + से कोई आपत्ति नहीं है

XElement ele = XElement.Load("text.xml");
String aXmlString = ele.toString(SaveOptions.DisableFormatting);

आप जिस चीज में रुचि रखते हैं, उसके आधार पर, आप शायद पूरे 'स्ट्रिंग' संस्करण भाग को छोड़ सकते हैं और सिर्फ XLinq ऑब्जेक्ट का उपयोग कर सकते हैं


6
XmlDocument doc = new XmlDocument();
   doc.Load("MonFichierXML.xml");

    XmlNode node = doc.SelectSingleNode("Magasin");

    XmlNodeList prop = node.SelectNodes("Items");

    foreach (XmlNode item in prop)
    {
        items Temp = new items();
        Temp.AssignInfo(item);
        lstitems.Add(Temp);
    }

1
var doc = new XmlDocument(); 
doc.Loadxml(@"c:\abc.xml");

ध्यान दें कि प्रश्न को XML सामग्री को एक स्ट्रिंग में संग्रहीत करने की आवश्यकता है।
मिनट

XmlDocument.LoadXml()एक XML स्ट्रिंग लोड करता है। किसी XML फ़ाइल को नाम से लोड करने के लिए, XmlDocument.Load()स्वीकृत उत्तर के रूप में उपयोग करें ।
फ्रांस्वा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.