3
    originalFiles = Directory.GetFiles(fbFolderBrowser.SelectedPath).Where(file => !file.EndsWith(".db")).ToArray();

foreach (string file in originalFiles)
    {
         File.Move(file, file.Replace(".JPG", ".jpg"));
         File.Move(file, file.Replace(".TIFF", ".tiff"));
         File.Move(file, file.Replace(".JPEG", ".jpeg"));
         File.Move(file, file.Replace(".BMP", ".bmp"));
         File.Move(file, file.Replace(".GIF", ".gif"));
    }

上記を実行すると、ファイル拡張子が小文字に変わると思いました。

ディレクトリにファイルがあります:

AAA_1.jpg
AAA_2.JPG
BBB_1.TIFF
BBB_2.GIF

私はそれをしたい:

AAA_1.jpg
AAA_2.jpg
BBB_1.tiff
BBB_2.gif

どうすればこれを行うことができますか?

4

2 に答える 2

8

クラスのメソッドとクラスのToLower()メソッドを使用します。これにより、考えられるすべての拡張子を列挙しなくても、すべての拡張子を小文字にすることができます。StringChangeExtension()Path

DirectoryInfo folder = new DirectoryInfo("c:\whatever");
FileInfo[] files = dirInfo.GetFiles("*.*");


foreach (var file in files)
{
    File.Move(file.FullName, Path.ChangeExtension(file, 
       Path.GetExtension(file).ToLower()));     
}
于 2012-08-22T20:40:25.087 に答える
-1

わかった。先端ロバートをありがとう。

foreach (string file in originalFiles)
{
  File.Move(file, Path.ChangeExtension(file, Path.GetExtension(file).ToLower()));
}
于 2012-08-22T20:52:30.517 に答える