سوال: چگونگی استخراج متن از فایل Xml توسط حلقه

ساخت وبلاگ

یه نمونه برات ضمیمه کردم .. :)

کلیت کار هم به اسن شکل هستش :

اول سورس رو درست کردم :

string xmlData = @"<QuranWords>
<Word entry='بِسْمِ' root='وسم' sureh='1' aye='1' id='1'>
<Subword subEntry='بِ' IsBase='0' />
<Subword subEntry='إِسْمِ' IsBase='1' />
</Word>
<Word entry='اللَّهِ' root='ءله' sureh='1' aye='1' id='2'>
<Subword subEntry='اللَّهِ' IsBase='1' />
</Word>
<Word entry='الرَّحْمَنِ' root='رحم' sureh='1' aye='1' id='3'>
<Subword subEntry='الْ' IsBase='0' />
<Subword subEntry='رَحْمَنِ' IsBase='1' />
</Word>
<Word entry='الرَّحِيمِ' root='رحم' sureh='1' aye='1' id='4'>
<Subword subEntry='الْ' IsBase='0' />
<Subword subEntry='رَحِيمِ' IsBase='1' />
</Word>
</QuranWords>";

بعدش یه مدل درست کردم برای لغاتم

public class QuranWords {
public string entry { get; set; }
public string root { get; set; }
public int sureh { get; set; }
public int aye { get; set; }
public int id { get; set; }
}

بعدش تو رویداد دکمم اینارو نوشتم
List<QuranWords> quranWords = new List<QuranWords>(); XmlDataDocument xmldoc = new XmlDataDocument();
xmldoc.LoadXml(xmlData);
XmlNodeList xmlnode = xmldoc.GetElementsByTagName("Word");
foreach (XmlNode xn in xmlnode)
{
quranWords.Add(new QuranWords {
entry = xn.Attributes["entry"].Value.ToString(),
root = xn.Attributes["root"].Value.ToString(),
sureh = int.Parse(xn.Attributes["sureh"].Value.ToString()),
aye = int.Parse(xn.Attributes["aye"].Value.ToString()),
id = int.Parse(xn.Attributes["id"].Value.ToString())
});
}
dataGridView1.DataSource = quranWords;
dataGridView1.Refresh();

تو خط اول یه لیستی از مدلم گرفتم
خط های بعدی هم اودم ایکس ام الو گرفتم و دونه دونه نود ها رو خوندم و لیستم خروجیمو پر کردم و در نهایت تو گرید نمایش دادم

تو به جای این خط

xmldoc.LoadXml(xmlData);

میتونی از این استفاده کتی و مستقیم ادرس فایل ایکس ام الو بدی
xmldoc.Load("D:/xmlData.xml");

برنامه نویس...
ما را در سایت برنامه نویس دنبال می کنید

برچسب : نویسنده : محمد رضا جوادیان programers بازدید : 110 تاريخ : شنبه 7 فروردين 1395 ساعت: 3:52