/*--------------------CSS部分-------------------*/ /*--------------------JS部分-------------------*/

c#语言基础编程-转义符

C#转义字符:

引言

为了在程序中能够控制字符的输出以及区分开双引号和单引号(双引号和单引号在程序中标示里面的内容为字符串和字符),所以用一种特殊的字符常量;是·以反斜线”\”开头,后跟一个或几个字符。让其·具有特定的含义,不同于字符原有的意义,故称“转义”字符。·用一些普通字符的组合来代替一些特殊字符,由于其组合改变了原来字符表示的含义,因此称为“转义” 。为控制输出的转义字符:

\0 空
\a 警告(产生峰鸣)
\b 退格
\f 换页
\n 换行,光标移到下行
\r 回车,光标在本行
\t 水平制表符
\v 垂直制表符
为表示双引号和单引号:
\’ 单引号
\” 双引号
\ 反斜杠
c#里 @ 表示的是:
所以,@的作用就应该是忽略转义字符的作用.
在C#中,”c:\temp”表示路径是c:\temp; 而@”c:\temp”就表示c:\temp;
其中意味着\t就不再转义符了。

例子

1、常用的就是\n和\r了。

  #region 192.168.10.5[port=21,type=ftp]     192.168.10.5[port=21]
string msg = "192.168.10.5[port=21,type=ftp]";
string[] parts = msg.Split(new string[] { "[port=", ",type=", "]" }, StringSplitOptions.RemoveEmptyEntries);
  Console.WriteLine("IP:{0}  Port:{1}  service:{2}", parts[0], parts[1], parts.Length == 3 ? parts[2] : "http");
 Console.ReadLine();

此时输出为:这里写图片描述
如改为:

Console.WriteLine("IP:{0}\n  Port:{1}\n  service:{2}", parts[0], parts[1], parts.Length == 3 ? parts[2] : "http");

结果为:这里写图片描述
如果改为:

 Console.WriteLine("IP:{0}\r  Port:{1}\r  service:{2}", parts[0], parts[1], parts.Length == 3 ? parts[2] : "http");

结果为:这里写图片描述

如果改为:

Console.WriteLine("IP:{0}  Port:{1}\r  service:{2}", parts[0], parts[1], parts.Length == 3 ? parts[2] : "http");

结果为:这里写图片描述

此处Ip其实被打印出来了,ip和port都被打印出来,然后回车键,光标来到起始点,然后service的信息遮盖住了ip信息,但是port信息没有遮盖住,所以port信息输出了。
如果改为:

Console.WriteLine("IP:{0}\r  Port:{1}\n  service:{2}", parts[0], parts[1], parts.Length == 3 ? parts[2] : "http");

结果为:这里写图片描述

此处意味着其实结果都打印出来,在打印Ip后,回车键但是没有换行,然后在本行开始出,继续打印,最后一部本分ip信息被遮盖。
2、输出双引号和单引号
如果在程序中有双引号,怎么查找或者怎么打印出双引号。其实在双引号前加\就可以了。
比如:
textbox.text=”你是\”天才\”,哈哈!”
显示什么?
显示:你是“天才”哈哈。
同样对于单引号。
那么如果想显示出”\t”,又该怎么做呢?
Response.Write(“\”\t\”“);
显示结果: “\t”
记得在程序中@还是很重要的,让转义符不再起作用,以防文件命中有t或者n
比如:c:\temp,这个就会出错。

posted @ 2015-03-16 12:08  bldong  阅读(274)  评论(0编辑  收藏  举报