2017-07-21 101 views
-5

ごめんなさいC#に詳しい。次のエラーが表示されるのはなぜですか?ラインDirectory.SetCurrentDirectory(workingDirectory);"DirectoryNotFoundException:パスの一部を見つけることができませんでした"

var workingDirectory = "C:\\Program Files(x86)"; 

Directory.SetCurrentDirectory(workingDirectory); 

エラー例外
"DirectoryNotFoundExceptionを:パスの一部が見つかりませんでした" 投げ

+1

コピーは、Windowsエクスプローラ(ファイルエクスプローラ)でパスを貼り付け、それがパスを見つけることができるかどうかを確認します。 'if(Directory.Exists(workingDirectory))... else //それを処理する ' – TheVillageIdiot

答えて

0

をファイルとx86の間にスペースがあります。お試しください

var workingDirectory = @"C:\Program Files (x86)"; 
+0

スペースがあることは分かっていますが、これはWindowsディレクトリにあるデフォルトのパスですプログラムファイル。 – Yves

+0

@ Yvesしかし、あなたのコードにはパスにスペースがないので、ディレクトリを見つけることができません。 – Xiaosu

3

"特別"フォルダを使いますか?

string WorkingDirectory = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) 

それとも実際には、1行で全部の操作を行います。

Directory.SetCurrentDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86)); 
+0

魔法の文字列を使用しようとするよりはるかに優れた、より洗練されたソリューションです。 – DeeKayy90

関連する問題