引言:

EXIF,是英文Exchangeable Image File(可交换图像文件)的缩写,最初由日本电子工业发展协会(JEIDA --Japan Electronic Industry Development Association) 制订,目前的版本是修改发表于19986月的2.1版。国际标准化组织(ISO)正在制订的相机文件设计标准(DCF -- Design role for Camera File system)就是以EXIF2.1格式为基础而设定的。记住,EXIF是一种图像文件格式,只是文件的后缀名还是沿用大家熟悉的jpg而已。实际上,EXIF信息就是由数码相机在拍摄过程中采集一系列的信息,然后把信息放置在我们熟知的jpg文件的头部,也就是说EXIF信息是镶嵌在JPEG图像文件格式内的一组拍摄参数,主要包括摄影时的光圈、快门、ISO、日期时间等各种与当时摄影条件相关的讯息,相机品牌型号,色彩编码,拍摄时录制的声音以及全球定位系统(GPS)等信息。简单的说,它就好像是傻瓜相机的日期打印功能一样,只不过EXIF信息所记录的资讯更为详尽和完备。不过,具有EXIF信息的JPEG图像文件要比普通的JPEG文件略大一点。就目前市场而言,新一代的数码相机都具有附加EXIF信息功能,大多数的数码相机厂商也都会随数码相机发售时附赠能够读取EXIF信息的软件,例如 Nikon 系列的数码相机就附赠 NikonView 软件,Agfa系列的相机则附赠 Photowize V1.8版,而富士相机附送的EXIF viewer软件更是这方面的领军人物(目前已在很多网站提供免费下载。还有一部分的数码相机会自动将EXIF信息转存成文档文件,例如:NIKON CoolPix 990SONY FD系列。除了硬件厂商随数码相机附带的EXIF信息查看软件,很多专业的图像软件厂商在这方面也不甘示弱,相继推出自己公司看图软件的最新版来支持这种近乎完美的JPEG-EXIF图像信息附加技术,如最近刚推出的ACDSee 4.0版本,就对现在流行的各种数码相机有相当好的支持,在EXIF图像信息附加方面较之其3.0版本也有很大的进步。不管是硬件厂商的配套软件还是专业名门的看图工具,所有这些软件都是为了方便数码摄影者能更方便地保存查看摄影图像的重要信息。我们将这些读取EXIF信息的软件归纳后分为四类:专业EXIF信息查看工具(以富士的EXIF viewer为例) 、具有查看EXIF信息的强大通用看图工具(以ACDSee为例)、支持EXIF信息查看的操作系统(微软的Windows XP)以及可以修改EXIF信息的另类工具(EXIF Editer),而我们这里要讲的是通过C#WEB上读取一个图片的EXIF信息

二、相关类(GetEXIFMetaData):

因为代码比较长,有五百多行,我只能将关键代码的片段拿出来讲讲,这个类中构造了两个结构MetadataDetail 和 Metadata  ,前者是为了存储EXIF中某元素信息的三种格式,起到中间转化的作用,一个是十六进制的索引信息,一个是没用处理过的信息代码,一个是显示信息。后面的那个结构就是存储一张图片所有EXIF信息元素的。 有两个方法LookupEXIFValue 和 GetEXIFMetaData ,前一个方法是处理特殊元素的对应显示的,后者从图片中读取相关信息然后填充到MetaData结构中。

 

用C#读取图片的EXIF信息的方法using System;
用C#读取图片的EXIF信息的方法
using System.Drawing;
用C#读取图片的EXIF信息的方法
using System.Drawing.Imaging;
用C#读取图片的EXIF信息的方法
using System.Collections;
用C#读取图片的EXIF信息的方法
using System.ComponentModel;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法
namespace Test.Image
{

用C#读取图片的EXIF信息的方法    
/// 功能:获得图片EXIF信息
用C#读取图片的EXIF信息的方法    
/// 作者:Rexsp
用C#读取图片的EXIF信息的方法    
/// 创建日期:2004-03-20
用C#读取图片的EXIF信息的方法    
/// 作者MSN:yubo@x263.net
用C#读取图片的EXIF信息的方法    
/// </summary>
用C#读取图片的EXIF信息的方法    public class EXIFMetaData
{


用C#读取图片的EXIF信息的方法        
/// 构造函数
用C#读取图片的EXIF信息的方法        
/// </summary>
用C#读取图片的EXIF信息的方法        public EXIFMetaData()
{
用C#读取图片的EXIF信息的方法        }

用C#读取图片的EXIF信息的方法        
#endregion
用C#读取图片的EXIF信息的方法


用C#读取图片的EXIF信息的方法        
/// 转换数据结构
用C#读取图片的EXIF信息的方法        
/// </summary>
用C#读取图片的EXIF信息的方法        public struct MetadataDetail
{
用C#读取图片的EXIF信息的方法            
public string Hex;//十六进制字符串
用C#读取图片的EXIF信息的方法
            public string RawValueAsString;//原始值串
用C#读取图片的EXIF信息的方法
            public string DisplayValue;//显示值串
用C#读取图片的EXIF信息的方法
        }
用C#读取图片的EXIF信息的方法        
#endregion
用C#读取图片的EXIF信息的方法


用C#读取图片的EXIF信息的方法        
/// 结构:存储EXIF元素信息
用C#读取图片的EXIF信息的方法        
/// </summary>
用C#读取图片的EXIF信息的方法        public struct Metadata
{
用C#读取图片的EXIF信息的方法            
public MetadataDetail EquipmentMake;
用C#读取图片的EXIF信息的方法            
public MetadataDetail CameraModel;
用C#读取图片的EXIF信息的方法            
public MetadataDetail ExposureTime;//曝光时间
用C#读取图片的EXIF信息的方法
            public MetadataDetail Fstop;
用C#读取图片的EXIF信息的方法            
public MetadataDetail DatePictureTaken;
用C#读取图片的EXIF信息的方法            
public MetadataDetail ShutterSpeed;// 快门速度
用C#读取图片的EXIF信息的方法
            public MetadataDetail MeteringMode;//曝光模式
用C#读取图片的EXIF信息的方法
            public MetadataDetail Flash;//闪光灯
用C#读取图片的EXIF信息的方法
            public MetadataDetail XResolution;
用C#读取图片的EXIF信息的方法            
public MetadataDetail YResolution;
用C#读取图片的EXIF信息的方法            
public MetadataDetail ImageWidth;//照片宽度
用C#读取图片的EXIF信息的方法
            public MetadataDetail ImageHeight;//照片高度
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法            
public MetadataDetail FNumber;// added f值,光圈数
用C#读取图片的EXIF信息的方法
            public MetadataDetail ExposureProg;// added 曝光程序
用C#读取图片的EXIF信息的方法
            public MetadataDetail SpectralSense;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail ISOSpeed;// added ISO感光度
用C#读取图片的EXIF信息的方法
            public MetadataDetail OECF;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail Ver;// added EXIF版本
用C#读取图片的EXIF信息的方法
            public MetadataDetail CompConfig;// added 色彩设置
用C#读取图片的EXIF信息的方法
            public MetadataDetail CompBPP;// added 压缩比率
用C#读取图片的EXIF信息的方法
            public MetadataDetail Aperture;// added 光圈值
用C#读取图片的EXIF信息的方法
            public MetadataDetail Brightness;// added 亮度值Ev
用C#读取图片的EXIF信息的方法
            public MetadataDetail ExposureBias;// added 曝光补偿
用C#读取图片的EXIF信息的方法
            public MetadataDetail MaxAperture;// added 最大光圈值
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法            
public MetadataDetail SubjectDist;// added主体距离
用C#读取图片的EXIF信息的方法
            public MetadataDetail LightSource;// added 白平衡
用C#读取图片的EXIF信息的方法
            public MetadataDetail FocalLength;// added 焦距
用C#读取图片的EXIF信息的方法
            public MetadataDetail FPXVer;// added FlashPix版本
用C#读取图片的EXIF信息的方法
            public MetadataDetail ColorSpace;// added 色彩空间
用C#读取图片的EXIF信息的方法
            public MetadataDetail Interop;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail FlashEnergy;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail SpatialFR;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail FocalXRes;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail FocalYRes;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail FocalResUnit;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail ExposureIndex;// added 曝光指数
用C#读取图片的EXIF信息的方法
            public MetadataDetail SensingMethod;// added 感应方式
用C#读取图片的EXIF信息的方法
            public MetadataDetail SceneType;// added 
用C#读取图片的EXIF信息的方法
            public MetadataDetail CfaPattern;// added 
用C#读取图片的EXIF信息的方法
        }
用C#读取图片的EXIF信息的方法        
#endregion
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法        
public string LookupEXIFValue(string Description, string Value)
{
用C#读取图片的EXIF信息的方法            
string DescriptionValue = null;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法            
switch(Description)
{
用C#读取图片的EXIF信息的方法                
case "MeteringMode":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                        
case "0":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Unknown";break;
用C#读取图片的EXIF信息的方法                        
case "1":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Average";break;
用C#读取图片的EXIF信息的方法                        
case "2":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Center Weighted Average";break;
用C#读取图片的EXIF信息的方法                        
case "3":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Spot";break;
用C#读取图片的EXIF信息的方法                        
case "4":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Multi-spot";break;
用C#读取图片的EXIF信息的方法                        
case "5":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Multi-segment";break;
用C#读取图片的EXIF信息的方法                        
case "6":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Partial";break;
用C#读取图片的EXIF信息的方法                        
case "255":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Other";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法                    
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "ResolutionUnit":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                        
case "1":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "No Units";break;
用C#读取图片的EXIF信息的方法                        
case "2":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Inch";break;
用C#读取图片的EXIF信息的方法                        
case "3":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Centimeter";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "Flash":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                        
case "0":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "未使用";break;
用C#读取图片的EXIF信息的方法                        
case "1":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "闪光";break;
用C#读取图片的EXIF信息的方法                        
case "5":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Flash fired but strobe return light not detected";break;
用C#读取图片的EXIF信息的方法                        
case "7":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "Flash fired and strobe return light detected";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "ExposureProg":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                        
case "0":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "没有定义";break;
用C#读取图片的EXIF信息的方法                        
case "1":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "手动控制";break;
用C#读取图片的EXIF信息的方法                        
case "2":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "程序控制";break;
用C#读取图片的EXIF信息的方法                        
case "3":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "光圈优先";break;
用C#读取图片的EXIF信息的方法                        
case "4":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "快门优先";break;
用C#读取图片的EXIF信息的方法                        
case "5":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "夜景模式";break;
用C#读取图片的EXIF信息的方法                        
case "6":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "运动模式";break;
用C#读取图片的EXIF信息的方法                        
case "7":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "肖像模式";break;
用C#读取图片的EXIF信息的方法                        
case "8":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "风景模式";break;
用C#读取图片的EXIF信息的方法                        
case "9":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "保留的";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "CompConfig":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                    
用C#读取图片的EXIF信息的方法                        
case "513":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "YCbCr";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "Aperture":
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法                    DescriptionValue 
= Value;
用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法                
case "LightSource":
用C#读取图片的EXIF信息的方法

{
用C#读取图片的EXIF信息的方法                    
switch(Value)
{
用C#读取图片的EXIF信息的方法                        
case "0":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "未知";break;
用C#读取图片的EXIF信息的方法                        
case "1":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "日光";break;
用C#读取图片的EXIF信息的方法                        
case "2":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "荧光灯";break;
用C#读取图片的EXIF信息的方法                        
case "3":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "白炽灯";break;
用C#读取图片的EXIF信息的方法                        
case "10":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "闪光灯";break;
用C#读取图片的EXIF信息的方法                        
case "17":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光A";break;
用C#读取图片的EXIF信息的方法                        
case "18":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光B";break;
用C#读取图片的EXIF信息的方法                        
case "19":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光C";break;
用C#读取图片的EXIF信息的方法                        
case "20":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光D55";break;
用C#读取图片的EXIF信息的方法                        
case "21":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光D65";break;
用C#读取图片的EXIF信息的方法                        
case "22":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "标准光D75";break;
用C#读取图片的EXIF信息的方法                        
case "255":
用C#读取图片的EXIF信息的方法                            DescriptionValue 
= "其它";break;
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法                    
break;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法            }

用C#读取图片的EXIF信息的方法            
return DescriptionValue;
用C#读取图片的EXIF信息的方法        }

用C#读取图片的EXIF信息的方法        
#endregion
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法        
public Metadata GetEXIFMetaData(string PhotoName)
{
用C#读取图片的EXIF信息的方法            
// 创建一个图片的实例
用C#读取图片的EXIF信息的方法
            System.Drawing.Image MyImage = System.Drawing.Image.FromFile(PhotoName);
用C#读取图片的EXIF信息的方法            
// 创建一个整型数组来存储图像中属性数组的ID
用C#读取图片的EXIF信息的方法
            int[] MyPropertyIdList = MyImage.PropertyIdList;
用C#读取图片的EXIF信息的方法            
//创建一个封闭图像属性数组的实例
用C#读取图片的EXIF信息的方法
            PropertyItem[] MyPropertyItemList = new PropertyItem[MyPropertyIdList.Length];
用C#读取图片的EXIF信息的方法            
//创建一个图像EXIT信息的实例结构对象,并且赋初值
用C#读取图片的EXIF信息的方法


用C#读取图片的EXIF信息的方法            Metadata MyMetadata 
= new Metadata();
用C#读取图片的EXIF信息的方法            MyMetadata.EquipmentMake.Hex 
= "10f";
用C#读取图片的EXIF信息的方法            MyMetadata.CameraModel.Hex 
= "110";
用C#读取图片的EXIF信息的方法            MyMetadata.DatePictureTaken.Hex    
= "9003";
用C#读取图片的EXIF信息的方法            MyMetadata.ExposureTime.Hex    
= "829a";
用C#读取图片的EXIF信息的方法            MyMetadata.Fstop.Hex 
= "829d";
用C#读取图片的EXIF信息的方法            MyMetadata.ShutterSpeed.Hex 
= "9201";
用C#读取图片的EXIF信息的方法            MyMetadata.MeteringMode.Hex 
= "9207";
用C#读取图片的EXIF信息的方法            MyMetadata.Flash.Hex 
= "9209";
用C#读取图片的EXIF信息的方法            MyMetadata.FNumber.Hex 
= "829d"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.ExposureProg.Hex = ""//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.SpectralSense.Hex = "8824"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.ISOSpeed.Hex = "8827"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.OECF.Hex = "8828"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.Ver.Hex = "9000"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.CompConfig.Hex = "9101"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.CompBPP.Hex = "9102"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.Aperture.Hex = "9202"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.Brightness.Hex = "9203"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.ExposureBias.Hex = "9204"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.MaxAperture.Hex = "9205"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.SubjectDist.Hex = "9206"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.LightSource.Hex = "9208"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.FocalLength.Hex = "920a"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.FPXVer.Hex = "a000"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.ColorSpace.Hex = "a001"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.FocalXRes.Hex = "a20e"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.FocalYRes.Hex = "a20f"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.FocalResUnit.Hex = "a210"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.ExposureIndex.Hex = "a215"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.SensingMethod.Hex = "a217"//added 
用C#读取图片的EXIF信息的方法
            MyMetadata.SceneType.Hex = "a301";
用C#读取图片的EXIF信息的方法            MyMetadata.CfaPattern.Hex 
= "a302";
用C#读取图片的EXIF信息的方法            
#endregion
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法            
// ASCII编码
用C#读取图片的EXIF信息的方法
            System.Text.ASCIIEncoding Value = new System.Text.ASCIIEncoding();
用C#读取图片的EXIF信息的方法            
用C#读取图片的EXIF信息的方法            
int index = 0;
用C#读取图片的EXIF信息的方法            
int MyPropertyIdListCount=MyPropertyIdList.Length;
用C#读取图片的EXIF信息的方法            
if(MyPropertyIdListCount!=0)
{
用C#读取图片的EXIF信息的方法                
foreach (int MyPropertyId in MyPropertyIdList)
{
用C#读取图片的EXIF信息的方法                    
string hexVal = "";
用C#读取图片的EXIF信息的方法                    MyPropertyItemList[index] 
= MyImage.GetPropertyItem(MyPropertyId);
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法                    
string myPropertyIdString=MyImage.GetPropertyItem(MyPropertyId).Id.ToString("x");
用C#读取图片的EXIF信息的方法                    
switch(myPropertyIdString)
{
用C#读取图片的EXIF信息的方法                        
case "10f":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.EquipmentMake.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem (MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.EquipmentMake.DisplayValue 
= Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "110":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.CameraModel.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.CameraModel.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9003":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.DatePictureTaken.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.DatePictureTaken.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9207":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.MeteringMode.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.MeteringMode.DisplayValue 
= LookupEXIFValue("MeteringMode",BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString());
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9209":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.Flash.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.Flash.DisplayValue 
= LookupEXIFValue("Flash",BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString());
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "829a":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureTime.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
string StringValue = "";
用C#读取图片的EXIF信息的方法                            
for (int Offset = 0; Offset < MyImage.GetPropertyItem (MyPropertyId).Len; Offset = Offset + 4)
{
用C#读取图片的EXIF信息的方法                                StringValue 
+= BitConverter.ToInt32(MyImage.GetPropertyItem(MyPropertyId).Value,Offset).ToString() + "/";
用C#读取图片的EXIF信息的方法                            }

用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureTime.DisplayValue 
=StringValue.Substring(0,StringValue.Length-1);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法                        
case "829d":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.Fstop.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
int int1;
用C#读取图片的EXIF信息的方法                            
int int2;
用C#读取图片的EXIF信息的方法                            int1 
=BitConverter.ToInt32(MyImage.GetPropertyItem(MyPropertyId).Value,0);
用C#读取图片的EXIF信息的方法                            int2 
= BitConverter.ToInt32(MyImage.GetPropertyItem(MyPropertyId).Value,4);
用C#读取图片的EXIF信息的方法                            MyMetadata.Fstop.DisplayValue 
= "F/" +(int1/int2);
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                            MyMetadata.FNumber.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.FNumber.DisplayValue 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法                        
case "9201":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ShutterSpeed.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
string StringValue = BitConverter.ToInt32(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            MyMetadata.ShutterSpeed.DisplayValue 
= "1/" + StringValue;
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "8822":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureProg.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureProg.DisplayValue 
= LookupEXIFValue("ExposureProg",BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString());
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "8824":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.SpectralSense.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.SpectralSense.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法                        
case "8827":
{
用C#读取图片的EXIF信息的方法                            hexVal 
= "";
用C#读取图片的EXIF信息的方法                            MyMetadata.ISOSpeed.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            hexVal 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value).Substring(0,2);
用C#读取图片的EXIF信息的方法                            MyMetadata.ISOSpeed.DisplayValue 
= Convert.ToInt32(hexVal,16).ToString();//Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法
                            break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "8828":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.OECF.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.OECF.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9000":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.Ver.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.Ver.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value).Substring(1,1)+"."+Value.GetString(MyPropertyItemList[index].Value).Substring(2,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9101":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.CompConfig.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.CompConfig.DisplayValue 
= LookupEXIFValue("CompConfig",BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString());
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9102":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.CompBPP.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.CompBPP.DisplayValue 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9202":
{
用C#读取图片的EXIF信息的方法                            hexVal 
= "";
用C#读取图片的EXIF信息的方法                            MyMetadata.Aperture.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            hexVal 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value).Substring(0,2);
用C#读取图片的EXIF信息的方法                            hexVal 
= Convert.ToInt32(hexVal,16).ToString();
用C#读取图片的EXIF信息的方法                            hexVal 
= hexVal + "00";
用C#读取图片的EXIF信息的方法                            MyMetadata.Aperture.DisplayValue 
= hexVal.Substring(0,1)+"."+hexVal.Substring(1,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9203":
{
用C#读取图片的EXIF信息的方法                            hexVal 
= "";
用C#读取图片的EXIF信息的方法                            MyMetadata.Brightness.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            hexVal 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value).Substring(0,2);
用C#读取图片的EXIF信息的方法                            hexVal 
= Convert.ToInt32(hexVal,16).ToString();
用C#读取图片的EXIF信息的方法                            hexVal 
= hexVal + "00";
用C#读取图片的EXIF信息的方法                            MyMetadata.Brightness.DisplayValue 
= hexVal.Substring(0,1)+"."+hexVal.Substring(1,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9204":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureBias.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureBias.DisplayValue 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9205":
{
用C#读取图片的EXIF信息的方法                            hexVal 
= "";
用C#读取图片的EXIF信息的方法                            MyMetadata.MaxAperture.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            hexVal 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value).Substring(0,2);
用C#读取图片的EXIF信息的方法                            hexVal 
= Convert.ToInt32(hexVal,16).ToString();
用C#读取图片的EXIF信息的方法                            hexVal 
= hexVal + "00";
用C#读取图片的EXIF信息的方法                            MyMetadata.MaxAperture.DisplayValue 
= hexVal.Substring(0,1)+"."+hexVal.Substring(1,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9206":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.SubjectDist.RawValueAsString 
=BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.SubjectDist.DisplayValue 
=Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "9208":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.LightSource.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.LightSource.DisplayValue 
= LookupEXIFValue("LightSource",BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString());
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "920a":
{
用C#读取图片的EXIF信息的方法                            hexVal 
= "";
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalLength.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            hexVal 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value).Substring(0,2);
用C#读取图片的EXIF信息的方法                            hexVal 
= Convert.ToInt32(hexVal,16).ToString();
用C#读取图片的EXIF信息的方法                            hexVal 
= hexVal + "00";
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalLength.DisplayValue 
= hexVal.Substring(0,1)+"."+hexVal.Substring(1,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a000":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.FPXVer.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.FPXVer.DisplayValue 
= Value.GetString(MyPropertyItemList[index].Value).Substring(1,1)+"."+Value.GetString(MyPropertyItemList[index].Value).Substring(2,2);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a001":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ColorSpace.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
if (BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString() == "1")
用C#读取图片的EXIF信息的方法                                MyMetadata.ColorSpace.DisplayValue 
= "RGB";
用C#读取图片的EXIF信息的方法                            
if (BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString() == "65535")
用C#读取图片的EXIF信息的方法                                MyMetadata.ColorSpace.DisplayValue 
= "Uncalibrated";
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a20e":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalXRes.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalXRes.DisplayValue 
=BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a20f":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalYRes.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalYRes.DisplayValue 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a210":
{
用C#读取图片的EXIF信息的方法                            
string aa;
用C#读取图片的EXIF信息的方法                            MyMetadata.FocalResUnit.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            aa 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();;
用C#读取图片的EXIF信息的方法                            
if (aa == "1") MyMetadata.FocalResUnit.DisplayValue = "没有单位";
用C#读取图片的EXIF信息的方法                            
if (aa == "2") MyMetadata.FocalResUnit.DisplayValue = "英尺";
用C#读取图片的EXIF信息的方法                            
if (aa == "3") MyMetadata.FocalResUnit.DisplayValue = "厘米";
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a215":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureIndex.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.ExposureIndex.DisplayValue 
= Value.GetString(MyPropertyItemList[index].Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a217":
{
用C#读取图片的EXIF信息的方法                            
string aa;
用C#读取图片的EXIF信息的方法                            aa 
= BitConverter.ToInt16(MyImage.GetPropertyItem(MyPropertyId).Value,0).ToString();
用C#读取图片的EXIF信息的方法                            MyMetadata.SensingMethod.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
if (aa == "2") MyMetadata.SensingMethod.DisplayValue = "1 chip color area sensor";
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a301":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.SceneType.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.SceneType.DisplayValue 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                        
case "a302":
{
用C#读取图片的EXIF信息的方法                            MyMetadata.CfaPattern.RawValueAsString 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            MyMetadata.CfaPattern.DisplayValue 
= BitConverter.ToString(MyImage.GetPropertyItem(MyPropertyId).Value);
用C#读取图片的EXIF信息的方法                            
break;
用C#读取图片的EXIF信息的方法                        }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法                    }

用C#读取图片的EXIF信息的方法                    
#endregion
用C#读取图片的EXIF信息的方法                    
用C#读取图片的EXIF信息的方法                    index
++;
用C#读取图片的EXIF信息的方法                }

用C#读取图片的EXIF信息的方法            }

用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法            MyMetadata.XResolution.DisplayValue 
= MyImage.HorizontalResolution.ToString();
用C#读取图片的EXIF信息的方法            MyMetadata.YResolution.DisplayValue 
= MyImage.VerticalResolution.ToString();
用C#读取图片的EXIF信息的方法            MyMetadata.ImageHeight.DisplayValue 
= MyImage.Height.ToString();
用C#读取图片的EXIF信息的方法            MyMetadata.ImageWidth.DisplayValue 
= MyImage.Width.ToString();
用C#读取图片的EXIF信息的方法            MyImage.Dispose();
用C#读取图片的EXIF信息的方法            
return MyMetadata;
用C#读取图片的EXIF信息的方法        }

用C#读取图片的EXIF信息的方法        
#endregion
用C#读取图片的EXIF信息的方法    }

用C#读取图片的EXIF信息的方法}

用C#读取图片的EXIF信息的方法

 

然后就是个调用的问题,有了这个类,我如何读取图片的EXIF信息呢?代码如下:

用C#读取图片的EXIF信息的方法              EXIFMetaData em = new EXIFMetaData();
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string filePath=Server.MapPath("Test.jpg");//这里可以动态传递图片路径的
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法              EXIFMetaData.Metadata m 
= em.GetEXIFMetaData(filePath);//这里就是调用,传图片绝对路径
用C#读取图片的EXIF信息的方法

用C#读取图片的EXIF信息的方法              
string exif = m.Ver.DisplayValue;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string camera = m.CameraModel.DisplayValue;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string model = m.CameraModel.DisplayValue;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string aperture = m.Aperture.DisplayValue;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string shutter = m.ShutterSpeed.DisplayValue;
用C#读取图片的EXIF信息的方法
用C#读取图片的EXIF信息的方法              
string sensitive = m.ExposureIndex.DisplayValue;
用C#读取图片的EXIF信息的方法

 

 

有什么不明白的,欢迎提出来,此代码经过测试,功能正常。

相关文章: