c#設(shè)置xml內(nèi)容不換行及屬性xsi:nil=true的空節(jié)點(diǎn)添加
更新時(shí)間:2013年03月01日 10:28:41 作者:
c#設(shè)置xml內(nèi)容不換行:添加屬性為xsi:nil=true的空節(jié)點(diǎn)便可實(shí)現(xiàn),感興趣的你可以參考下本文,或許有意想不到的收獲
1.設(shè)置生成xml的內(nèi)容格式為不換行
默認(rèn)用下面代碼創(chuàng)建并生成xml的代碼如下:
XmlDocument doc = new XmlDocument();
//這里為創(chuàng)建節(jié)點(diǎn)等代碼,省略....
//保存
doc.Save(filename);
結(jié)果生成的節(jié)點(diǎn)有換行:
<UserName>
</UserName>
這樣的話會(huì)導(dǎo)致xsd中如果有驗(yàn)證會(huì)通不過(guò),要想不換行,doc.Save(filename);可以改為:
using (XmlTextWriter xtw = new XmlTextWriter(filename, null))
{
//None表示不應(yīng)用特殊格式,另一個(gè)相反枚舉值Indented表示縮進(jìn)
xtw.Formatting = Formatting.None;
doc.Save(xtw);
}
2.添加屬性為xsi:nil="true"的空節(jié)點(diǎn)
public static XmlElement CreateNodeWithNullAttr(XmlDocument doc, string nodeName)
{
XmlElement element = doc.CreateElement(nodeName);
XmlAttribute attr = doc.CreateAttribute("xsi", "nil", "http://www.w3.org/2001/XMLSchema-instance");
attr.Value = "true";
element.SetAttributeNode(attr);
//element.Attributes.Append(attr);
return element;
}
默認(rèn)用下面代碼創(chuàng)建并生成xml的代碼如下:
復(fù)制代碼 代碼如下:
XmlDocument doc = new XmlDocument();
//這里為創(chuàng)建節(jié)點(diǎn)等代碼,省略....
//保存
doc.Save(filename);
結(jié)果生成的節(jié)點(diǎn)有換行:
<UserName>
</UserName>
這樣的話會(huì)導(dǎo)致xsd中如果有驗(yàn)證會(huì)通不過(guò),要想不換行,doc.Save(filename);可以改為:
復(fù)制代碼 代碼如下:
using (XmlTextWriter xtw = new XmlTextWriter(filename, null))
{
//None表示不應(yīng)用特殊格式,另一個(gè)相反枚舉值Indented表示縮進(jìn)
xtw.Formatting = Formatting.None;
doc.Save(xtw);
}
2.添加屬性為xsi:nil="true"的空節(jié)點(diǎn)
復(fù)制代碼 代碼如下:
public static XmlElement CreateNodeWithNullAttr(XmlDocument doc, string nodeName)
{
XmlElement element = doc.CreateElement(nodeName);
XmlAttribute attr = doc.CreateAttribute("xsi", "nil", "http://www.w3.org/2001/XMLSchema-instance");
attr.Value = "true";
element.SetAttributeNode(attr);
//element.Attributes.Append(attr);
return element;
}
您可能感興趣的文章:
- C#中TreeView實(shí)現(xiàn)適合兩級(jí)節(jié)點(diǎn)的選中節(jié)點(diǎn)方法
- C#讀取xml節(jié)點(diǎn)數(shù)據(jù)方法小結(jié)
- C#配置文件Section節(jié)點(diǎn)處理總結(jié)
- C#實(shí)現(xiàn)appSettings節(jié)點(diǎn)讀取與修改的方法
- C#通過(guò)XML節(jié)點(diǎn)屬性/屬性值讀取寫入XML操作代碼實(shí)例
- js獲取Treeview選中的節(jié)點(diǎn)(C#選中CheckBox項(xiàng))
- C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)點(diǎn),與dataset結(jié)合等)
- C# 復(fù)制指定節(jié)點(diǎn)的所有子孫節(jié)點(diǎn)到新建的節(jié)點(diǎn)下
相關(guān)文章
asp.net調(diào)用飛信免費(fèi)發(fā)短信(測(cè)試有效)
這篇文章主要介紹了asp.net如何調(diào)用飛信免費(fèi)發(fā)短信,記得要開(kāi)通飛信把對(duì)方加為好友才能發(fā),需要的朋友可以參考下2014-05-05asp.net計(jì)算一串?dāng)?shù)字中每個(gè)數(shù)字出現(xiàn)的次數(shù)
計(jì)算一串?dāng)?shù)字中每個(gè)數(shù)字出現(xiàn)的次數(shù),可以這樣子,先判斷輸入的字符串是不是數(shù)字組成,還是否包含有其它字符2012-05-05IdentityServer4實(shí)現(xiàn).Net Core API接口權(quán)限認(rèn)證(快速入門)
這篇文章主要介紹了IdentityServer4實(shí)現(xiàn).Net Core API接口權(quán)限認(rèn)證,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03ASP.NET多彩下拉框開(kāi)發(fā)實(shí)例
有人曾經(jīng)提出開(kāi)發(fā)一個(gè)根據(jù)不同選擇而顯示不同顏色的管理工具,本文主要就是演示如何讀取系統(tǒng)顏色并在下拉框中的每個(gè)條目中顯示對(duì)應(yīng)的顏色,需要的朋友可以參考下2015-09-09- 就是有時(shí)候窗口不能夠成功置頂,這時(shí)需要重新切換下標(biāo)簽,就可以置頂了,本文介紹C# SetWindowPos實(shí)現(xiàn)窗口置頂?shù)姆椒?/div> 2012-12-12
asp.net 頁(yè)面版文本框智能提示JSCode (升級(jí)版)
模擬百度,Google智能提示,非與服務(wù)器端交互的,數(shù)據(jù)源來(lái)自已經(jīng)綁定好的下拉列表。純客戶端腳本 升級(jí)版2009-12-12.NET使用YARP根據(jù)域名轉(zhuǎn)發(fā)實(shí)現(xiàn)反向代理
這篇文章介紹了.NET使用YARP根據(jù)域名轉(zhuǎn)發(fā)實(shí)現(xiàn)反向代理的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-09-09最新評(píng)論