3 回答

TA貢獻1828條經驗 獲得超3個贊
您說“我正在串聯簡單而簡短的XML文件,并且我不使用序列化,所以我需要手動顯式轉義XML字符”。
我強烈建議您不要用手做。使用XML API為您完成所有工作-讀取原始文件,然后將這兩個文件合并為一個文檔(您可能需要使用XmlDocument.ImportNode),然后再次將其寫出。您不想編寫自己的XML解析器/格式器。序列化在這里有點無關緊要。
如果您可以為我們提供一個簡短而完整的示例來說明您要做什么,那么我們可能可以幫助您避免一開始就擔心逃脫。
原始答案
您的意思還不清楚,但是通常XML API會為您完成此操作。您在一個節點中設置文本,它將自動轉義任何需要的內容。例如:
LINQ to XML示例:
using System;
using System.Xml.Linq;
class Test
{
static void Main()
{
XElement element = new XElement("tag",
"Brackets & stuff <>");
Console.WriteLine(element);
}
}
DOM示例:
using System;
using System.Xml;
class Test
{
static void Main()
{
XmlDocument doc = new XmlDocument();
XmlElement element = doc.CreateElement("tag");
element.InnerText = "Brackets & stuff <>";
Console.WriteLine(element.OuterXml);
}
}
兩個示例的輸出:
<tag>Brackets & stuff <></tag>
當然,這是假設您要轉義XML。如果不是,請發布更多詳細信息。
- 3 回答
- 0 關注
- 763 瀏覽
相關問題推薦
添加回答
舉報