在路径中将“ \\”替换为“ \”

时间:2018-12-13 13:50:38

标签: c# asp.net-mvc visual-studio

File.WriteAllBytes 函数在路径输入中@“ \”正常工作

File.WriteAllBytes(@"C:\folder\file.png", bytes); 

但带有“ \\”

File.WriteAllBytes("C:\\folder\\file.png", bytes); 

返回值:不支持给定路径的格式

在我的应用程序中,我有类似的东西

 File.WriteAllBytes(getFile(fid), bytes); 

getFile(fid)返回

  

C:\\ folder \\ fileid.png

所以我尝试了getFile(fid).Replace(“ \\”,@“ \”)..我期待着这个

  

C:\ folder \ fileid.png

但是我仍然有这个

  

C:\\ folder \\ fileid.png

和错误不支持给定路径的格式

1 个答案:

答案 0 :(得分:7)

getFile(fid).Replace("\\",@"\")中,"\\"的值为\(第一个\用作转义字符,以转义第二个字符,即实际的\ )。 @"\" 的值为\。净,您的代码尝试将\替换为\,但不会执行任何操作。

请尝试使用getFile(fid).Replace(@"\\",@"\")。这应该做您想要的。