PDA

View Full Version : سوال: چگونه می توان در c# از فایل xml خواند؟



vafaei
پنج شنبه 05 آذر 1388, 11:51 صبح
چگونه می توان در c# از فایل xml خواند؟
در صورت امکان مثال بزنید.

AliRezaPro
پنج شنبه 05 آذر 1388, 13:20 عصر
شما میتونید با عمل XmlSerializerو DeSerializer این کار انجام دهید
فقط کافی است نام اونها رو سرچ کنید در گوگل

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

sky_in_iran
پنج شنبه 05 آذر 1388, 18:13 عصر
سلام دوست عزيز
راه زياده براي اين كار من 2تاشو خدمتتون ميگم : اول : استفاده از xmlreader كه بهش مسر ميدي و ميخوني دوم : dataset



_RssDataSet = new DataSet();
_RssDataSet.ReadXml(_xmlUrl);





انتخاب با شماست اگه خواستيد بگيد كد نمونه هم بزاريم البته اگه با اين اطلاعات كه دوستان ميدن خودتون بريد دنبالش بهتر ياد ميگيريد

vafaei
پنج شنبه 05 آذر 1388, 18:40 عصر
شما میتونید با عمل XmlSerializerو DeSerializer این کار انجام دهید
فقط کافی است نام اونها رو سرچ کنید در گوگل

["پروسه ی مربوط به ذخیره کردن اطلاعات یک شی از کلاس در دیسک را سریالیز کردن و پروسه ی مربوط به ایجاد شی اولیه با توجه به اطلاعات روی دیسک دی سریالیز کردن میگویند"]
با تشکر از راهنمای تون
من تازه کارم
من یه فرم دارم که با یک کامبو باکس زبان {فارسی یا انگلیسی } رو مشخص می کنم.
برای text لیبل های استفاده شده در این فرم مثلا باید از دو فایل زیر استفاده کنم:
Persian.xml


<page>
<name>نام:</name>
<family>نام خانوادگي:</family>
<age>سن:</age>
</page>


English.xml


<page>
<name>Name:</name>
<family>Family:</family>
<age>Age:</age>
</page>


البته کد زیر رو هم پیرو پیشنهاد شما پيدا کردم:


using System.IO;
using System.Xml.Serialization;



public class GenericSerialization<T> where T : new()
{
public static bool Serialize(object _object, string _path)
{
XmlSerializer serializer = new XmlSerializer(typeof(T));
FileStream fs = null;
try
{
fs = new FileStream(_path, FileMode.Create);
serializer.Serialize(fs, _object);
return true;
}
catch
{
return false;
}
finally
{
fs.Close();
}
}

public static T Deserialize(string _path)
{
T result;
XmlSerializer serializer = new XmlSerializer(typeof(T));
FileStream fs = new FileStream(_path, FileMode.OpenOrCreate);
try
{
result = (T) serializer.Deserialize(fs);
}
catch
{
result = new T();
}
finally
{
fs.Close();
}
return result;
}
}
از این کد چیز زیادی سر در نیاوردم.
حالا نمی دونم به چه شکل از اينها استفاده کنم؟

vafaei
پنج شنبه 05 آذر 1388, 19:12 عصر
سلام دوست عزيز
راه زياده براي اين كار من 2تاشو خدمتتون ميگم : اول : استفاده از xmlreader كه بهش مسر ميدي و ميخوني دوم : dataset


_RssDataSet = newDataSet();
_RssDataSet.ReadXml(_xmlUrl);





انتخاب با شماست اگه خواستيد بگيد كد نمونه هم بزاريم البته اگه با اين اطلاعات كه دوستان ميدن خودتون بريد دنبالش بهتر ياد ميگيريد


از کمکتون متشکرم
در صورت امکان نمونه کد بگذارید.

sky_in_iran
جمعه 06 آذر 1388, 16:56 عصر
سلام دوست عزيز
اينم يه نمومنه كد موفق و پيروز باشيد

Hossenbor
چهارشنبه 18 آذر 1388, 09:55 صبح
با سلام خمت بر و بچ عزیز:قلب:
چگونه فایل ایجاد شده با این برنامه رو خوند منظورم کلمه Word و Mean
XmlWriter writer = null;

try
{

// Create an XmlWriterSettings object with the correct options.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = ("\t");
settings.OmitXmlDeclaration = true;

// Create the XmlWriter object and write some content.
writer = XmlWriter.Create("data.xml", settings);
writer.WriteStartElement("xdxf");
writer.WriteElementString("full_name", "Test");
for (int i = 0; i <= 10; i++)
{
writer.WriteElementString("ar","Word"+i,"k","Mean" );
}
writer.WriteEndElement();

writer.Flush();
}
finally
{
if (writer != null)
writer.Close();

}
این 2 تا رو می خواستم در ArrayList قرار بدم من نمی دونم:متفکر:چیکار می کنی فقط دستت درد نکنه راهنمایی توپ
http://barnamenevis.org/forum/images/statusicon/user_offline.gif http://barnamenevis.org/forum/images/buttons/quote.gif (http://www.barnamenevis.org/forum/newreply.php?do=newreply&p=863465)