我在更新之前使用了https://www.nuget.org/packages/ExifLib.PCL/库。
我现在无法使用此库:
无法安装软件包' ExifLib.PCL 1.0.1'。你正试图 将此包安装到目标项目中 ' Xamarin.Mac,Version = v2.0',但该软件包不包含任何内容 程序集引用或与之兼容的内容文件 框架。有关更多信息,请与软件包作者联系。
任何替代方案?
我使用Exif库获取图像拍摄日期:
using (var stream = File.Open (filePath, FileMode.Open)) {
var ein=new CGImagePropertiesExif ();
var jpegInfo = ExifReader.ReadJpeg (stream);
if (jpegInfo.DateTimeOriginal != null) {
takenDate = DateTime.ParseExact (jpegInfo.DateTimeOriginal, "yyyy:MM:dd HH:mm:ss", null);
}
}
此代码终止了应用程序,也无法看到任何异常:(
如果我只是模拟日期时间,就像这样:
static DateTime GetMyImageTakenDate (NSUrl url)
{
DateTime takenDate = DateTime.Today;
using (var stream = File.Open (url.Path, FileMode.Open)) {
takenDate = DateTime.ParseExact (DateTime.Now.ToString ("yyyy:MM:dd HH:mm:ss"), "yyyy:MM:dd HH:mm:ss", null);
}
return takenDate;
}
应用程序正常工作:/
答案 0 :(得分:0)
您的代码适用于我:
var filePath = "/Users/sushi/Desktop/img_1771.jpg";
using (var stream = File.Open(filePath, FileMode.Open))
{
var jpegInfo = ExifReader.ReadJpeg(stream);
if (jpegInfo.DateTimeOriginal != null)
{
var takenDate = DateTime.ParseExact(jpegInfo.DateTimeOriginal, "yyyy:MM:dd HH:mm:ss", null);
Console.WriteLine(takenDate);
}
}
输出:
12/14/2003 12:01:44 PM
使用:
Xamarin.Mac Version: 2.10.0.105
ExifLib.PCL Version: 1.0.2-pre01