检测图像文件上重复文件扩展名的最佳方法是什么? (imageName.tif.jpg
)。为了保证JPG格式的文件扩展名,我必须使用自动追加.jpg到最后摄取。检测重复文件扩展名
我想过迭代已知的文件扩展名并检查文件名是否包含该扩展名。或者检查期间和最后的第一个索引,但是如果图像名称出于任何原因是my.test.tif.jpg
。最终,一旦我检测到重复的扩展名,我想清除它的最后一个.jpg。
var fileName = Path.GetFileName(path);
if (fileName != null)
{
int firstFileExtPos = fileName.IndexOf(".", StringComparison.Ordinal);
int lastFileExtPos = fileName.LastIndexOf(".", StringComparison.Ordinal);
if (firstFileExtPos != lastFileExtPos)
{
path = path.Substring(0, path.Length - 4);
}
}
return path;
'path.Length - 4'请记住,并非所有图像文件扩展名都是3个字符加一个点(4个字符)。有JPEG,TIFF,可能还有其他一些我记不住头脑的东西。 – tnw
假设该文件的扩展名为“jpg”和“tif”('xyz.tif.jpg'),您将删除哪个扩展名?在决定哪一个不适用之前,您是否需要确定真实的文件类型? – Icarus
最后一个.jpg将被修剪。有些情况下甚至可能是.jpg.jpg。因为修剪的长度为4,所以总是将“.jpg”附加到最后。 – egordon21