我在C#中使用Directory.GetFiles。這段代碼被轉換成一個程序集,然後用在T-SQL腳本中。下面是代碼行,我認爲這是問題:SQL Server程序集中的非法字符問題
C#代碼:
string[] filePaths = Directory.GetFiles(path, ext, SearchOption.AllDirectories);
錯誤(T-SQL腳本):
System.IO.DirectoryNotFoundException:無法找到'G:\ Photography \ Archive \ SPBKF3〜L'路徑的一部分。
我假設代字號不是用於Windows中的文件夾名稱的合法字符,因爲導致此錯誤的唯一文件夾是帶有代字號的文件夾。這些文件正在Mac和Windows系統之間共享,我發現文件和文件夾名稱在過去一直是個問題。
我很難理解爲什麼Directory.GetFiles方法甚至會找到一個不存在的目錄。該文件夾顯示在Windows資源管理器中,但我無法訪問該文件夾。
有什麼我可以做,以避免這些問題的文件夾?
非常感謝Kragen。我導航到Windows資源管理器中的父目錄,並將其顯示爲存在。但是,當我嘗試訪問該文件夾時,Windows告訴我它不在那裏。如果我複製並粘貼路徑,或者只是通過雙擊該文件夾打開,則會發生此問題。 – BDawg