■ サンプル
public bool IsImage(string imagePath) { ImageCodecInfo[] decoders = ImageCodecInfo.GetImageDecoders(); Bitmap bitmap; try { bitmap = new Bitmap(imagePath); } catch (Exception) { return false; } bool isImage = false; foreach (ImageCodecInfo decoderInfo in decoders) { if (decoderInfo.FormatID == bitmap.RawFormat.Guid) { isImage = true; } } return isImage; }
補足
* このままだと激遅なので、最悪Try-Catchまでで、以降の処理は行わなくていいかも
参考資料
http://www.atmarkit.co.jp/fdotnet/dotnettips/018loadbmp/loadbmp.htmlhttp://www.atmarkit.co.jp/fdotnet/dotnettips/022getformat/getformat.html