我有以下属性:
public string InstanceName
{
get
{
return cbServerInstanceName.Text;
}
}
输入
cbServerInstanceName.Text = "ServerName\ PcName"
这显示为
"ServerName\\ PcName"
我尝试使用string.replace但无法让它工作。
有什么想法吗?
答案 0 :(得分:5)
我将对它进行一次尝试,并假设您在Visual Studio中使用调试器视图看到"ServerName\\ PcName"
。由于它显示的是"a string\\"
而不是@"string literal\"
,因此您会看到自己的斜线已被转义。就像添加新行一样"\r\n"
。
如果您可以尝试将值打印到MessageBox,Debug或Console。 应该按预期显示。 手指交叉
答案 1 :(得分:5)
当您使用C#并在调试器中查看字符串时,它将转义某些字符,而\
就是其中之一;它将在调试器中显示为\\
但在运行时未在调试器中查看,它将转换为单个\