2011-07-14 66 views
2

我試圖訪問C:\ Users \ Public \ Documents \下的資源,該資源在資源管理器上顯示爲C:\ Users \ Public \ Public Documents \。有沒有辦法能夠使用.NET C#中的資源管理器中顯示的路徑名訪問交匯點下目錄的DirectoryInfo?.NET連接目錄和DirectInfo問題

+0

你遇到了什麼問題?錯誤?例外? –

+0

@Anna:我相信他的意思是,如果你嘗試打開'C:\ Users \ Public \ Public Documents',它就會顯示不起作用因爲沒有這樣的目錄),但是如果你在Windows資源管理器中查看目錄名稱,它將顯示爲「公共文檔」(儘管地址欄將在編輯模式下顯示「文檔」) –

+2

Explorer實際上使用兩種格式:地址欄會以麪包屑模式顯示「公共文檔」,但如果單擊(或以其他方式聚焦),則文本框將顯示正確的路徑,即「 C:\用戶\公用\文件」。因此,對於您希望用戶複製/粘貼名稱的情況,您無需執行任何操作。在這個意義上最好與其他Windows應用程序保持一致。如果你試圖重新解釋路徑,有很多事情可能會出錯 - 例如,如果在那裏有一個名爲「公共文檔」的真實目錄呢? –

回答

0

您何時/如何獲得C:\users\public\public documents路徑?

如果用戶從資源管理器複製/粘貼,C:\users\public\documents路徑將被複制到剪貼板。通過SaveFileDialog也會產生有效的路徑。

如果您需要訪問Windows 7庫的方法,您可以給Windows API Code Pack一個去。然後,您可以訪問「Public Documents as KnownFolders.PublicDocuments」,例如,從我所看到的(我以前從未使用過),仍然無法將C:\users\public\public documents可靠地轉換爲DirectoryInfo,但您可能有更好的運氣來挖掘文檔。