[英]Writing to xml from C#
我有一個關於使用C#編寫xml的問題。 我想要這種結構;
<directory_move>
<folder_path>
<source_path>...</source_path>
..
..
</folder_path>
<properties>
<aaabbcc>....</aaabbcc>
..
..
</properties>
</directory_move>
我做了很多嘗試,但無法獲得想要的東西。 您能給我個建議嗎?
這是我的代碼
XElement element = new XElement("DIRECTORY_MOVE");
foreach (string sourceDirName in listArray)
{
element.Add(new XElement("SOURCE_PATH", sourceDirName));
}
element.Add(new XElement("DESTINATION_PATH", destination));
if (rdbtnDoLater)
{
element.Add(new XElement("RDBTNDOLATER", "checked"));
}
if (rdbtnDoImmediately)
{
element.Add(new XElement("RDBTNDOIMMEDIATELY", "checked"));
}
if (chkIsOverwrite)
{
element.Add(new XElement("CHKISOVERWRİTE", "checked"));
}
if (chkExitWhenFinish)
{
element.Add(new XElement("CHKEXITWHENFINISH", "checked"));
}
if (chkFolderQuestion)
{
element.Add(new XElement("CHKFOLDERQUESTION", "checked"));
}
使用Linq到XML
XElement example =
new XElement("directory_move",
new XElement("folder_path",
new XElement("source_path", "..."),
new XElement("source_path", "...")
),
new XElement("properties",
new XElement("aaabbcc", ...)
)
);
example.WriteToFile(...)
編輯:代碼的問題是您要將所有內容添加到根元素,因此所有內容都是該根的子級。
正如我在示例中所做的那樣,您需要做的是重現層次結構。
XElement root = new XElement("DIRECTORY_MOVE");
XElement folderPath = new XElement("folder_path");
root.Add(folderPath)
foreach (string sourceDirName in listArray)
{
folderPath.Add(new XElement("SOURCE_PATH", sourceDirName));
}
等等...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.