Baca file XML ke XmlDocument


103

Saya sangat baru mengenal C #. Saya memiliki file XML (text.xml). Saya ingin membacanya XmlDocumentdan menyimpan aliran dalam variabel string.


1
terima kasih atas bantuannya.
AJP

Jawaban:


169

Gunakan XmlDocument.Load()metode untuk memuat XML dari file Anda. Kemudian gunakan XmlDocument.InnerXmlproperti untuk mendapatkan string XML.

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

2
XmlDocumenttidak mengandung definisi untuk Load.
Matt Clark

Saya tidak menyukai semua ini karena tidak ada yang berhasil. Ternyata, saya sedang mengembangkan untuk WindowsRT, dan Compact .NET Framework memiliki banyak fitur yang dihilangkan. Termasuk banyak yang saya butuhkan ... Seperti XmlDocument.Load()dan dan konstruktor StreamReaderStreamReader(filePath)
Matt Clark

11
@MattClark: Saya merasakan sakit Anda - saya telah berjuang dengan keanehan dan keterbatasan CF selama dua tahun sekarang - tapi itu bukan alasan untuk tidak memilih. OP tidak menentukan CF, jadi tidak ada alasan penjawab mempertimbangkan CF.
B. Clay Shannon


6

Harap Anda tidak keberatan Xml.Linq dan .net3.5 +

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

Bergantung pada apa yang Anda minati, Anda mungkin dapat melewati seluruh bagian 'string' var dan hanya menggunakan objek 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");

Perhatikan pertanyaan itu juga membutuhkan untuk menyimpan konten XML ke dalam sebuah string.
menit

XmlDocument.LoadXml()memuat string XML. Untuk memuat file XML berdasarkan nama, gunakan XmlDocument.Load()sebagai jawaban yang diterima menyarankan.
François Beaune
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.