加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在C#中从JPEG,XMP或EXIF读取数据元数据

发布时间:2020-12-15 06:45:40 所属栏目:百科 来源:网络整理
导读:我一直在寻找一种从C#中的JPEG文件中读取元数据(具体来说是日期)的一种体面的方式,并且稍稍延伸一些.据我所知,现有的信息显示如下代码: BitmapMetadata bmd = (BitmapMetadata)frame.Metadata;string a1 = (string)bmd.GetQuery("/app1/ifd/exif:{uint=3686
我一直在寻找一种从C#中的JPEG文件中读取元数据(具体来说是日期)的一种体面的方式,并且稍稍延伸一些.据我所知,现有的信息显示如下代码:
BitmapMetadata bmd = (BitmapMetadata)frame.Metadata;
string a1 = (string)bmd.GetQuery("/app1/ifd/exif:{uint=36867}");

但是在我的无知中,我不知道GetQuery()将返回的元数据是什么,还是要传递什么.

我想先尝试读取XMP,如果XMP不存在,则返回EXIF.有没有一个这样做的简单方法?

谢谢.

解决方法

以下似乎很好,但如果有坏事,我会感谢任何意见.
public string GetDate(FileInfo f)
    {
        using(FileStream fs = new FileStream(f.FullName,FileMode.Open,FileAccess.Read,FileShare.Read))
        {
            BitmapSource img = BitmapFrame.Create(fs);
            BitmapMetadata md = (BitmapMetadata)img.Metadata;
            string date = md.DateTaken;
            Console.WriteLine(date);
            return date;
        }
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读