当我使用
时System.IO.File.WriteAllBytes("\\server\\tmp\\" + FileName, fileData);
似乎总是在开头添加“C:”,所以它会尝试保存到c:\ server \ temp ...
有解决方法吗?
答案 0 :(得分:9)
我相信这是因为双反斜杠没有被转义。
请改为尝试:
System.IO.File.WriteAllBytes(@"\\server\tmp\" + FileName, fileData);
答案 1 :(得分:3)
您当前的路径评估为\server\tmp\...
,默认为c:\server\tmp\...
。
要创建UNC路径,您需要一个额外的转义目录分隔符:
System.IO.File.WriteAllBytes("\\\\server\\tmp\\" + FileName, fileData);
或您可以使用字符串文字:
System.IO.File.WriteAllBytes(@"\\server\tmp\" + FileName, fileData);
答案 2 :(得分:1)
他的:
System.IO.File.WriteAllBytes(Path.Combine(@"\\server\tmp", FileName), fileData);