我有一個問題,如果有代碼讀取XML設置,如:葛亭串<atribute> = <value>從XML
<length>5</length>
<height>10</heigth>
我怎樣才能獲得在C#
for (i = 0; i < atributesInFile; i++)
{
<atribute> = <atribute>.innertext;
}
因此,這將像
length = 5;
height = 10;
我希望你明白我的意思:)
我有一個問題,如果有代碼讀取XML設置,如:葛亭串<atribute> = <value>從XML
<length>5</length>
<height>10</heigth>
我怎樣才能獲得在C#
for (i = 0; i < atributesInFile; i++)
{
<atribute> = <atribute>.innertext;
}
因此,這將像
length = 5;
height = 10;
我希望你明白我的意思:)
可以聲明它代表了XML的類:
public class MyType
{
public int Height { get; set; }
public int Length { get; set; }
}
那麼做到這一點:
var xmlSerializer = new XmlSerializer(typeof (MyType));
using (var reader = new XmlTextReader(@"location"))
{
var myType = (MyType) xmlSerializer.Deserialize(reader);
}
我不明白,爲什麼你的代碼反序列化的XML,然後覆蓋讀取值? – svick
這不是重要的部分..只是想表明你可以使用強類型類型。 –
如果你的XML是這樣
<settings>
<length>5</length>
<height>10</height>
</settings>
你可以做
var xdoc = XDocument.Load(pathtoxml);
foreach (var setting in xdoc.Descendants("settings"))
{
var line = setting.Name + " = " + setting.Value + ";";
// display line
}
啊..一些代碼格式問題與我的瀏覽器..假設一個設置元素包含您的XML –
你能顯示有效的XML嗎? –
你是什麼意思,你真的想動態創建基於XML的局部變量嗎?這對我來說沒有多大意義。 – svick
要點是,當我有很多設置時,我想簡短地說明一下代碼,就像循環讀取代碼一樣。 – Taurib