|
分類:[C#]
C#(VS Express 2013)でファイル一覧を取得しようとしています。 一覧はフォルダとサブフォルダを含むものにしたいので次のようにしました。
string[] files = System.IO.Directory.GetFiles(@"C:\Users\ユーザー名\Documents", "*", System.IO.SearchOption.AllDirectories);
しかし、次のような例外が発生してしまいます。 パス 'C:\Users\ユーザー名\Documents\My Music' へのアクセスが拒否されました。
実際に「C:\Users\ユーザー名\Documents」の中にはMy Musicというフォルダはありません。
検索すると属性を調べればシンボリックリンクやジャンクションであることがわかるので それをスキップすれば良いという情報が見つかりましたが、 GetFilesの段階で例外が発生しているため属性を調べる前に中断されてしまいます。
取得不能なファイルは無視してそのまま続行するようにしたいのですがどのようにすればいいのでしょうか。 よろしくお願いします。
|