DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

FileSystemWatcherでファイル名が小文字になる問題の解決法

こちらのように、ファイルの変更を監視するためにFileSystemWatcherクラスを使う時、Changedイベントハンドラで取得できるFileSystemEventArgsオブジェクトのFullPathやNameプロパティのファイル名が小文字になってしまいますが、これは.NET Frameworkのバグのようです。(.NET Framework 1.1で確認。2.0では修正された模様。)

この問題を解決するには、今のところ小文字のファイル名から正しいファイル名を取得する何らかの方法を考えるしかないようです。「長いパス名から短いパス名、短いパス名から長いパス名を取得する」で紹介している短いパス名から長いパス名を取得する方法により、それが可能ですので、そちらをご覧ください。

  • 履歴:
  • 2007/1/25 「長いパス名から短いパス名、短いパス名から長いパス名を取得する」に一部を分離。

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • イベントハンドラの意味が分からない、C#のコードをそのまま書いても動かないという方は、こちらをご覧ください。
  • .NET Tipsをご利用いただく際は、注意事項をお守りください。