2012-02-17 79 views
2

当我尝试通过c#中的file.copy()方法将文件从本地机器复制到本地网络中的其他机器时,遇到错误说法,给定的路径的格式不支持File.copy()方法不支持给定路径的格式错误

我使用下面的语法

File.Copy(@"C:\temp\sample.txt", @"\\DEMO-PC\D:\DummyFolder\sample.txt", true); 
+1

如果输入\\ DEMO-PC \ d:\ DummyFolder \ Windows资源管理工作的呢?如果没有,它可以用于\\ DEMO-PC \ D $ \ DummyFolder \? – 2012-02-17 06:26:48

回答

9

尝试用一个美元符号代替冒号:

File.Copy(@"C:\temp\sample.txt", @"\\DEMO-PC\D$\DummyFolder\sample.txt", true); 

编辑

':'字符在Windows路径中有一个特殊的状态;以文件共享的名义使用它是不合法的。 '$'字符也有一个特殊的地位:它用来指定隐藏的份额。 Windows会自动为计算机上的每个驱动器创建隐藏的文件共享;省略冒号因为它不合法,并添加'$'来隐藏共享。

更多信息请参阅本知识库文章:http://support.microsoft.com/kb/314984

+1

感谢为我工作的phoog,我可以知道添加$而不是冒号有什么区别吗? – mahesh 2012-02-17 06:29:10

+0

@mahesh不客气。我编辑了答案以添加更多信息。 – phoog 2012-02-17 16:09:29

相关问题