首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

String.Format @,该如何解决

2013-01-11 
String.Format@问题:前边有 “@”和没有“@”区别是什么?textBox1.Text String.Format(@{0} -r 25 -f 1 -l

String.Format @
问题:前边有 “@”和没有“@”区别是什么?

            textBox1.Text = String.Format(@"{0} -r 25 -f 1 -l 1 -i  {1} -o  {2} ",
                "pdf2imgPath", "sourcePath", "targetPath");

            textBox2.Text = String.Format("{0} -r 25 -f 1 -l 1 -i  {1} -o  {2} ",
                "pdf2imgPath", "sourcePath", "targetPath"); 
[解决办法]
前面加@是忽略转义字符
[解决办法]
@可以取消字符串的转义,看如下代码:
string s1 = @"c:\windows
d:\windows
""hello world""";
string s2 = "c:\\windows\r\n" +
"d:\\windows\r\n" +
""hello world"";
都表示

c:\windows
d:\windows
"Hello world"
[解决办法]
@在C#里面有2个作用。
1、取消转义
string s1 = @"c:\windows"
string s1 = "c:\\windows"   --这里不用@就需要两个斜线了

string s3 = @"aaaaa
bbbb
cccc";   --还可以把一个字符串折行

2、屏蔽关键字
我们要把object作为一个方法的参数名字,这样写肯定是错误的,因为object是一个关键字。


        public void test(string object)
        {
        }


加上@就对了:

        public void test(string @object)
        {
            
        }

热点排行