편집 : "간단하고 짧은 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 이스케이프를 원한다고 가정합니다. 그렇지 않은 경우 자세한 내용을 게시하십시오.