我正在处理大约 10,000 张图像,并且正在使用元数据提取器来提取 Exif 数据。它适用于大约 7,000 张图像,但对其余图像无效。
这是相关代码,
public static string ExposureDateTime(string fileName, string logFile)
{
string dateTime = null;
try
{
var metadatadir = ImageMetadataReader.ReadMetadata(fileName);
var subIfdDirectory = metadatadir.OfType<ExifSubIfdDirectory>().FirstOrDefault();
dateTime = subIfdDirectory?.GetDescription(ExifDirectoryBase.TagDateTimeOriginal);
}
catch (Exception e)
{
using (StreamWriter sw = new StreamWriter(logFile, true))
{
sw.WriteLine("{0}: {1}", e.Message, fileName);
}
}
return dateTime;
}
dateTime
对字符串应用断点,返回null
失败文件的值。
但是,如果我在 Windows 中使用本机照片应用程序打开图像,我可以在文件信息下正确看到曝光日期。