string DownloadDirectoryPath = @"C:\\Program Files\\companyname\\productname\\username\\0\\2012081617085746"
(这是我从sql server获得的路径) 但我的应用程序使用单斜杠,所以我尝试使用
DownloadDirectoryPath= DownloadDirectoryPath.Replace(@"\\", @"\");
但这不起作用,我得到相同的字符串。 有什么建议吗?
请注意:
上面的值是我在观察窗口中看到的
答案 0 :(得分:6)
你在DownloadDirectoryPath的价值面前没有得到@,所以它实际上并没有得到任何\,而只有<\ p>
执行console.WriteLine(DownloadDirectoryPath)以检查其中的实际内容。
编辑(OP更新的问题):
如果在调试时将鼠标悬停在包含它的变量上(或使用监视窗口),则VS将显示单个\ as \\以从转义字符中消除歧义。将它写入控制台,文件或其他输出以检查它到底是什么。
答案 1 :(得分:0)
@
告诉编译器读取字符串Verbatim。编写用于要解释的字符串的SQL的人。要使用您删除的内容@
string DownloadDirectoryPath = "C:\\Program Files\\companyname\\productname\\username\\0\\2012081617085746"
另请注意,当您在调试器监视窗口中看到逐字字符串时,您将看到编译器添加的转义字符,而不是源代码中的逐字字符。