我试图使用c#中的File.Exist()函数检查UNC路径中是否存在该文件,但即使该文件存在,它也仅返回false。
以下是示例代码
outPath="\\DevSrv\\outPath\\result.txt";
if(File.Exists(outPath))
{
.....
}
上述代码始终失败,路径“\ DevSrv \ outPath \ result.txt”有效。我可以使用Windows资源管理器访问路径。
抱歉,我在创建这篇文章时错过了“\”
答案 0 :(得分:4)
在字符串前使用@
以避免必须转义斜杠
outPath=@"\\DevSrv\outPath\result.txt";
if(File.Exists(outPath))
{
.....
}
答案 1 :(得分:3)
你没有逃避斜线,试试:
outPath="\\\\DevSrv\\outPath\\result.txt";
if(File.Exists(outPath))
{
.....
}
答案 2 :(得分:2)
使用带反斜杠的字符串时,需要考虑转义序列。 此链接将为您提供有关转义序列的详细视图。 http://blogs.msdn.com/b/csharpfaq/archive/2004/03/12/what-character-escape-sequences-are-available.aspx
从链接引用:
C#定义了以下字符转义序列:
其中,\ a,\ f,\ v,\ x和\ U在我的经验中很少使用。
所以在你的例子中。您可以为字符串使用以下选项。
outPath=@"\\DevSrv\outPath\result.txt";
//Or
outPath="\\\\DevSrv\\outPath\\result.txt";