Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用反斜杠格式化字符串_C# - Fatal编程技术网

C# 使用反斜杠格式化字符串

C# 使用反斜杠格式化字符串,c#,C#,我是c#的新手,所以希望这次对你们中的一些人来说不是太难 我正在尝试构建一个包含\的字符串,但我很难只显示一个反斜杠,即使我正在添加额外的转义字符或忽略它们。有人能告诉我我做错了什么吗 我希望我的字符串看起来像什么: "10.20.14.103\sql08" 到目前为止,我所尝试的: 我添加了一个额外的字符以使编译器满意,但它没有逃逸它 ip = string.Format("{0}\\\\{1}", ip, instancename); // output has 2 \'s 我告诉它不要

我是c#的新手,所以希望这次对你们中的一些人来说不是太难

我正在尝试构建一个包含\的字符串,但我很难只显示一个反斜杠,即使我正在添加额外的转义字符或忽略它们。有人能告诉我我做错了什么吗

我希望我的字符串看起来像什么:

"10.20.14.103\sql08"
到目前为止,我所尝试的:

我添加了一个额外的字符以使编译器满意,但它没有逃逸它

ip = string.Format("{0}\\\\{1}", ip, instancename); // output has 2 \'s
我告诉它不要理会逃跑,它决定不理我

string temp =  @"192.168.1.200\sql08"; // output has 2 \'s

有人能帮我弄明白吗?(这里的richtext编辑器似乎比VS2010做得更好,lol)

如果您在调试器中查看这些字符串(即,将鼠标悬停在变量上或使用手表),调试器会将转义字符添加到显示字符串中,使其成为有效的字符串表达式。如果要以这种方式逐字查看字符串,请单击工具提示右侧的放大镜,或查看包含字符串的条目。

我猜您正在调试器中查看值,并看到它们有两个斜杠

这很正常。调试器将显示两个斜杠,即使实际的字符串表示形式只有一个斜杠。这只是习惯调试器时需要克服的又一个困难


请确保,当您实际使用字符串时,它们仍然只有一个斜杠(使用任何一种方法)。

我猜您可能被调试器弄糊涂了

如果将鼠标悬停在VS中的局部变量上,字符串将被转义,因此单个
\
将显示为
\


要查看字符串的真实内容,请将其输出到某个地方以供显示(例如,到控制台)或将鼠标悬停在变量上,单击出现的小放大镜旁边的箭头,然后选择“文本可视化工具”。

如此快速的回答!我做了一个debug.assert,确实有正确的字符串值。我想这只是你应该知道的关于c#中的可视化工具的事情之一,而不是vb。从来没有想过他们会有不同的行为,但现在我知道了。
string requiredString = string.Format(@"{0}\\{1}",str1,str2);