2012-02-17 108 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

相關問題