一种基于Metadata的图片文件批量整理工具_陈满.pdf
《一种基于Metadata的图片文件批量整理工具_陈满.pdf》由会员分享,可在线阅读,更多相关《一种基于Metadata的图片文件批量整理工具_陈满.pdf(3页珍藏版)》请在咨信网上搜索。
1、2023.7电脑编程技巧与维护1概述随着数码相机和智能手机的普及,越来越多的人开始使用这些设备拍摄照片,导致大量的数码图片存储在计算机或其他设备中。在管理这些数码图片的过程中,会遇到各种问题,例如,命名混乱、重复、无法找到特定的照片等。因此,一种高效的图片批量整理工具成许多用户的需求。2相关技术2.1MetadataExtractor 组件MetadataExtractor是一款开源组件,用于从多种文件格式中提取元数据(Metadata)信息,其中包括:图片、音频、视频等。MetadataExtractor可以提取多种类型的元数据信息,例如,Exif、IPTC、XMP等,可以帮助用户获取有关文
2、件的详细信息,例如,文件大小、拍摄时间、相机型号、GPS位置等。2.2Costura.Fody 插件Costura.Fody是一款基于.NET平台的开源项目,用于将应用程序中使用的所有依赖项打包到单个可执行文件中。通常情况下,当编写.NET应用程序时,需要将应用程序打包成一个可执行文件和一些依赖库文件。Costura.Fody插件可以将这些依赖库文件打包到可执行文件中,更加方便地部署和使用应用程序。3总体设计3.1文件处理整体流程3.1.1 获取所有待处理的文件当用户选择“待整理目录”“整理后目录”“未处理目录”,选择完“处理格式”“文件处理方式”“创建文件夹方式”“文件重命名方式”后,程序首
3、先会检查上述目录是否为空、目录是否存在,然后获取用户“待整理目录”文件夹里的所有文件。例如,这里 将 待 整 理 文 件 夹 为c:images,存 储 到 一 个List对象中,例如这里命名为allFileInfos,遍历待整理目录的时候,采取的是递归的方式,遍历c:images里面的子文件,循环判断是否是文件夹,如果是文件夹,则递归;如果不是文件夹,是文件属性,则添加到allFileInfos集合中。3.1.2根据用户筛选的文件类型获取所有文件的 Tag根据用户的文件筛选类型,是图片、视频,还是所有文件,分别进行处理。例如,处理图片类型。前面获取到了文件夹中的所有文件,存储在allFile
4、Infos集合中,但是没有进行筛选,那么,根据用户选择进行筛选。存储到一个List集合中,例如,对象命名为list。获取的最终的目标集合list后,进行循环遍历整个list集合,针对每一个文件,采用ImageMetadataReader.ReadMetadata方 法 进 行 获 取Tag属 性,存 储 在 一 个List集合中。3.1.3根据 List集合处理图片获取List集合后,继续遍历这个集合。根据集合中的myYear、myMonth属性,结合用户第一步选择的文件夹生成方案进行文件夹生成。生成文件夹后,进行文件处理操作。如果目标文件夹已存在该图片,则按照文件重复的规则进行处理。如果不存
5、在该图片,则直接拷贝。3.2重复文件处理规则系统软件会递归获取“待处理”目录下所有文件,含各级子文件夹内的所有文件,自动按年、月创建文整理后的文件夹,按时间将相应文件进行归类。作者简介:陈满(1983),男,本科,研究方向为信息系统集成开发;巩莎莎(1986),女,硕士,研究方向为法律基础和思想政治教育。一种基于 Metadata 的图片文件批量整理工具陈满,巩莎莎(华北理工大学,河北 唐山063210)摘要:介绍一种基于 MetadataExtractor 组件的图片批量整理工具,该工具可以通过读取图片的元数据,实现图片的自动重命名和批量整理。探讨了日常管理大量数码图片的常见问题,介绍了 M
6、etadataExtractor 组件及 Costura.Fody 插件的功能和使用方法;探讨了文件批量处理的整体流程,包括获取元数据、创建文件夹等系统实现步骤;总结了该工具的优点和局限性,包括高效性、精度性、灵活性和可扩展性等优点,以及元数据不完整、受图片格式限制和操作有限性等局限性。关键词:MetadataExtractor 组件;Costura.Fody 插件;图片整理137DOI:10.16184/prg.2023.07.0382023.7电脑编程技巧与维护当软件判断有重复文件时,会根据文件大小进一步判断是否真的重复,或仅是文件名重复。文件名重复,文件大小不一致时,会重命名文件然后按日
7、期放入整理后的文件夹中;当软件判断文件名一致、文件大小也一致时,会将文件重命名,放入未处理目录中,待自动处理结束后进行手工处理,避免因文件重名而丢失文件。3.2文件处理方式文件夹内的文件尽量控制在50 GB以内,以免因数据量过大而造成内存异常。选择待处理目录后,可进一步进行待整理文件格式的筛选。可以选择所有照片格式、所有视频格式,或者所有文件,也可以选择某单一格式的文件,按需选择即可。如果是复制方式,则源文件不会做任何改动,保持原样,所做操作均为复制,得到的是一套整理后复制文件。如果是移动方式且文件数量巨大,则可能占用空间较大,但速度较快,二者都不会丢失文件。4系统实现4.1MetadataE
8、xtractor 组件引用在C#中可以通过以下步骤使用MetadataExtractor组件。(1)使用NuGet包管理器或手动下载MetadataEx-tractor库,然后右键单击“引用”,浏览到MetadataEx-tractor组件位置,将其添加到C#项目中。(2)在代码中使用以下命名空间导入MetadataEx-tractor库,代码如下。using MetadataExtractor;using MetadataExtractor.Formats.Exif;4.2获取图片文件的 exif 数据读取图片的Metadata元数据,代码如下:IEnumerable di-rectorie
9、s=ImageMetadataReader.ReadMetadata(im-agePath);foreach(var directory in directories)foreach(var tag in directory.Tags)Console.WriteLine($directory.Name-tag.Name=tag.Description);if(directory.HasErrors)foreach(var error in directory.Errors)Console.WriteLine($ERROR:error);4.3批量创建文件夹批量创建图片文件夹有两种方式,具体如下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 基于 Metadata 图片 文件批量 整理 工具 陈满
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。