C# XML中的转义字符操作
C#XML中<、>等转义字符转为<、>等符号
usingSystem.IO; usingSystem.Xml; publicstringToXML(stringstr) { StringReaderReader=newStringReader(str); XmlDocumentxml=newXmlDocument(); xml.Load(Reader); returnxml.InnerText.ToString(); }
C#XML中<、>等符号转为<、>等转义字符
usingSystem.IO; usingSystem.Runtime.Serialization; publicstringToXML(stringstr) { using(MemoryStreamms=newMemoryStream()) { XmlObjectSerializersz=newDataContractSerializer(obj.GetType()); sz.WriteObject(ms,str); stringres=Encoding.UTF8.GetString(ms.ToArray()); returnres; } }
补充:C#中的转义字符和Verbatim字符串
C#中的转义字符跟C/C++的定义一致。有以下常用转移字符:
转义字符 |
字符名称 |
\' |
单引号 |
\" |
双引号 |
\\ |
反斜杠 |
\0 |
空字符 |
\a |
警报符 |
\b |
退格 |
\f |
换页 |
\n |
换行 |
\r |
回车 |
\t |
水平制表 |
\v |
垂直制表 |
Verbatim字符串
对于verbatim字符串,编译器会严格按照原样对其进行解释。也就是说,即使这个字符串跨越多行,或是包含转义字符,编译器也将不予理会,即这些格式和转义符将按照原样输出。
唯一例外的是引号,编译器必须将其转义,因为只有这样才能确定字符串的边界。
Verbatim字符串的定义语法为以@符号开始,后面紧跟包含在引号中的字符串。
例如:
stringsample=@"Hello"; stringsample=@"Hello\tworld";//生成Hello\tworld
以下是一个实用的示例:
stringsample=@"C:\MyDocuments\sample.txt"; //结果为:C:\MyDocuments\sample.txt,如同语句:stringsample="C:\\MyDocuments\\sample.txt"
若想在Verbatim字符串内使用引号,必须使用附加的引号组将其转义。例如,生成字符串"Hi"的代码如下:
Strings=@"""Hi""";//注意:两边都有3个引号
上述代码将生成下列字符串:
"Hi"
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。