Is there quick way to get the ImageFormat object associated to a particular file extension? I\'m looking for quicker than string comparisons for each format.
Here's some old code I found that should do the trick:
var inputSource = "mypic.png";
var imgInput = System.Drawing.Image.FromFile(inputSource);
var thisFormat = imgInput.RawFormat;
This requires actually opening and testing the image--the file extension is ignored. Assuming you are opening the file anyway, this is much more robust than trusting a file extension.
If you aren't opening the files, there's nothing "quicker" (in a performance sense) than a string comparison--certainly not calling into the OS to get file extension mappings.