2013-07-02 102 views
1

我使用string[] dirs = Directory.GetDirectories("instances", "*")獲取所有目錄。GetDirectories返回路徑\目錄

但它返回作爲跟隨目錄:

instances\\test01, instances\\test02

然後我用下面的函數將文件下載到該目錄:

FileDownloader downloader = new FileDownloader(dirs[0] + "/server/server.jar", "blabla"); 

但該文件出現在根目錄代替。
有什麼建議嗎?

+3

使用[路徑組合(HTTP:// MSDN .microsoft.com/en-us/library/system.io.path.combine.aspx) – Sayse

+0

@Sayse擊敗了我。 'Path.Combine()'絕對是最好的解決方案,因爲它也是平臺無關的。 – Nolonar

+0

@Nolonar - 它嵌入了我的腦海,我花了20個工作小時重構其他人的代碼。 – Sayse

回答

4

而不是dirs[0] + "/server/server.jar"

使用

Path.Combine(dirs[0], "/server/server.jar")

我想像該字符串追加可以治療\t爲製表

+0

我用webclient下載jar文件,但這個webclient不處理路徑中的雙斜槓。然後jar繼續下載到根目錄 – kevingoos

+0

雙斜槓只會在視覺工作室窗口中 – Sayse

+0

經過3天的搜索後,我發現我的錯誤:P謝謝@Sayse您通過提及視覺工作室中的雙斜槓來幫助我很多。我不知道:P 但我的錯誤是非常愚蠢的:我是我下載文件的類,我有一個硬編碼路徑。 'client.DownloadFileAsync(url,「server.jar」);''而不是'client.DownloadFileAsync(url,dir);' 謝謝大家的幫助:) – kevingoos