我想用C#编写一个小程序,通过我的jpeg照片,例如,将它们分类到带日期的文件夹中(使用MY约会约定,该死的…)。
有谁知道以编程方式获取日期和时间或曝光等EXIF数据的相对简单的方法?谢谢!
签出此元数据提取器。 它是用Java编写的,但也已移植到C#。 我使用Java版本编写了一个小实用程序,用于根据日期和模型标签重命名jpeg文件。很好用。
EDIT 元数据提取器也 支持.NET。这是一个非常快速和简单的库,用于访问图像和视频中的元数据。
它完全支持Exif以及IPTC,XMP和文件类型(包括JPEG,PNG,GIF,PNG,ICO,WebP,PSD等)中的许多其他类型的元数据。
var directories = ImageMetadataReader.ReadMetadata(imagePath); // print out all metadata foreach (var directory in directories) foreach (var tag in directory.Tags) Console.WriteLine($"{directory.Name} - {tag.Name} = {tag.Description}"); // access the date time var subIfdDirectory = directories.OfType<ExifSubIfdDirectory>().FirstOrDefault(); var dateTime = subIfdDirectory?.GetDateTime(ExifDirectoryBase.TagDateTime);
可通过NuGet和GitHub上的代码获得。