PDA

View Full Version : راهنمایی در باره خواندن xml



m0rteza
دوشنبه 07 مرداد 1387, 16:26 عصر
سلام دوستان
آیا این سند xml است؟ اگه نیست چیه؟ فرض کنید در یک رشته متن زیر وجود داره که شبیه xml هست . حالا میحوام اطلاعات رو بخونم . چطور این کار رو انجام بدم؟



<NewDataSet>
<Table>
<Name>Iran</Name>
<CountryCode>ir</CountryCode>
<Currency>Rial</Currency>
<CurrencyCode>IRR</CurrencyCode>
</Table>
<Table>
<Name>Iran</Name>
<CountryCode>ir</CountryCode>
<Currency>Rial</Currency>
<CurrencyCode>IRR</CurrencyCode>
</Table>
</NewDataSet>


این متن مقدار بازگشتی از یک متد موحود در وب سرویس است

Masiha1986
دوشنبه 07 مرداد 1387, 16:51 عصر
با سلام
بله دوست عزیز این سند XML است.
برای این کار می تونی از چنین کدی استفاده کنی:



string XmlPath = "YOURXMLPATH";

DataSet ds = new DataSet();
ds.ReadXml(XmlPath);

grdTest.DataSource = ds.Tables["Table"];

پروژه نمونه رو از قسمت فایل های پیوست شده دانلود کن (NET 3.5.)

m0rteza
دوشنبه 07 مرداد 1387, 19:56 عصر
دوست عزیز از زحمتی که کشیدید ممنون . ولی منظورم این بود که این این متن در یک متغییر ازنوع رشته باشه ، نه در فایل xml .

Zaparo
دوشنبه 07 مرداد 1387, 21:54 عصر
بریز تو یه رشته بعد با XMLDocument لودش کن بقیه کاراش رو میتونی با XMLDocument انجام بدی System.XML
اگه میتونی از XLinq یا همون LINQ to XML استفاده کن یه API هلو برای کار با XML داره 3 سوت کارت رو راه میندازه

Masiha1986
سه شنبه 08 مرداد 1387, 10:00 صبح
با سلام
در صورتی که اطلاعات XML درون یک رشته باشه می تونید به این صورت عمل کنید:



String strXML;//Your XML

StringReader stringReader = new StringReader(strXML);
XmlReader xmlReader = new XmlTextReader(stringReader);

ds.ReadXml(xmlReader);
grdTest.DataSource = ds.Tables["Table"];