C# XML中的转义字符操作

时间:2021-05-20

C# XML中 &lt;、 &gt; 等转义字符转为 <、>等符号

using System.IO;using System.Xml;public string ToXML(string str) { StringReader Reader = new StringReader(str); XmlDocument xml = new XmlDocument(); xml.Load(Reader); return xml.InnerText.ToString(); }

C# XML中<、>等符号转为 &lt;、 &gt; 等转义字符

using System.IO;using System.Runtime.Serialization;public string ToXML(string str) { using (MemoryStream ms = new MemoryStream()) { XmlObjectSerializer sz = new DataContractSerializer(obj.GetType()); sz.WriteObject(ms, str); string res = Encoding.UTF8.GetString(ms.ToArray()); return res; } }

补充:C#中的转义字符和Verbatim字符串

C#中的转义字符跟C/C++的定义一致。有以下常用转移字符:

转义字符

字符名称

\'

单引号

\"

双引号

\\

反斜杠

\0

空字符

\a

警报符

\b

退格

\f

换页

\n

换行

\r

回车

\t

水平制表

\v

垂直制表

Verbatim字符串

对于verbatim字符串,编译 器会严格按照原样对其进行解释。也就是说,即使这个字符串跨越多行,或是包含转义字符,编译器也将不予理会,即这些格式和转义符将按照原样输出。

唯一例外的是引号,编译器必须将其转义,因为只有这样才能确定字符串的边界。

Verbatim字符串的定义语法为以@符号开始,后面紧跟包含在引号中的字符串。

例如:

string sample = @"Hello";string sample = @"Hello\tworld"; //生成Hello\tworld

以下是一个实用的示例:

string sample=@"C:\My Documents\sample.txt";//结果为:C:\My Documents\sample.txt,如同语句:string sample="C:\\My Documents\\sample.txt"

若想在Verbatim字符串内使用引号,必须使用附加的引号组将其转义。例如,生成字符串"Hi"的代码如下:

String s=@" " "Hi"""; //注意:两边都有3个引号

上述代码将生成下列字符串:

"Hi"

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章