文件处理方法、终端及计算机可读存储介质

文档序号:510411 发布日期:2021-05-28 浏览:1次 >En<

阅读说明:本技术 文件处理方法、终端及计算机可读存储介质 (File processing method, terminal and computer readable storage medium ) 是由 魏新宇 张攀 陈伦广 曹菲 于 2021-01-22 设计创作,主要内容包括:本发明提出一种文件处理方法、终端及计算机可读存储介质,所述方法包括步骤:在接收到整理运行指令时,获取所述整理运行指令对应的执行目录;生成与所述执行目录对应的第一源文件列表,并判断所述执行目录中是否包括历史源文件列表;若是,则获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件;对所述待执行文件执行整理操作,并根据所述第一源文件列表对所述历史源文件列表进行更新。通过查找并仅针对未执行过整理操作的文件进行整理操作,极大地降低了操作的时间。(The invention provides a file processing method, a terminal and a computer readable storage medium, wherein the method comprises the following steps: when a sorting operation instruction is received, acquiring an execution catalog corresponding to the sorting operation instruction; generating a first source file list corresponding to the execution catalog, and judging whether the execution catalog comprises a history source file list or not; if yes, acquiring a file to be executed in the first source file list and not in the history source file list; and executing a sorting operation on the file to be executed, and updating the history source file list according to the first source file list. By searching and only carrying out the sorting operation on the files which are not subjected to the sorting operation, the operation time is greatly reduced.)

文件处理方法、终端及计算机可读存储介质

技术领域

本发明涉及软件开发领域,尤其涉及一种文件处理方法、终端及计算机可读存储介质。

背景技术

随着小游戏的蓬勃发展,越来越多的平台已开始构建自己的小游戏生态,之所以称为小游戏,是因为这些游戏资源经过整理,压缩等操作,存放在CDN(Content DeliveryNetwork,内容分发网络)远程服务器上,从而保证母包包体较小。但是现有的方案会在每次整理压缩时对所有的文件进行操作,使得整理时间较长。

发明内容

本发明的主要目的在于提出一种文件处理方法、终端及计算机可读存储介质,旨在解决现有技术中在每次整理压缩时对所有的文件进行操作,使得整理时间较长的问题。

为实现上述目的,本发明提供一种文件处理方法,所述方法包括步骤:

在接收到整理运行指令时,获取所述整理运行指令对应的执行目录;

生成与所述执行目录对应的第一源文件列表,并判断所述执行目录中是否包括历史源文件列表;

若是,则获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件;

对所述待执行文件执行整理操作,并根据所述第一源文件列表对所述历史源文件列表进行更新。

可选地,所述判断所述执行目录中是否包括历史源文件列表的步骤之后还包括:

若否,则将所述第一源文件列表中的文件作为待执行文件。

可选地,所述生成与所述执行目录对应的第一源文件列表的步骤包括:

获取所述执行目录中各文件的文件名以及特征数据;

将各文件的文件名与特征数据进行关联以得到所述第一源文件列表。

可选地,所述对所述待执行文件执行整理操作的步骤包括:

获取各文件名后缀,并根据各文件名后缀判断各文件的处理类型;

按照各文件的处理类型,将各文件划分至对应处理类型的缓冲区中;

对各个缓冲区中的文件进行与所在缓冲区对应的整理操作。

可选地,所述处理类型包括图片类型、JSON文件类型和其它类型;所述对各个缓冲区中的文件进行与所在缓冲区对应的整理操作的步骤包括:

当缓冲区为图片类型对应的缓冲区时,将该缓冲区内的文件进行压缩之后输出至该缓冲区对应的预设输出路径;

当缓冲区为JSON文件类型对应的缓冲区时,将该缓冲区内的文件进行压缩之后输出至该缓冲区对应的预设输出路径;

当缓冲区为其它类型对应的缓冲区时,将该缓冲区内的文件进行复制,并将得到的复制文件输出至该缓冲区对应的预设输出路径。

可选地,所述生成与所述执行目录对应的第一源文件列表的步骤之前包括:

将所述预设输出路径清空。

可选地,所述方法还包括:

获取所述待执行文件的数量,并在对所述待执行文件执行整理操作的过程中,实时获取已完成整理操作的文件的完成数量;

根据所述待执行文件的数量与所述完成数量得到操作进度;

显示所述操作进度。

可选地,所述判断执行目录中是否包括历史源文件列表的步骤之前包括:

判断所述执行目录是否为空目录;

若是,则显示空目录提示信息;

若否,则执行步骤:判断执行目录中是否包括历史源文件列表。

为实现上述目的,本发明还提供一种终端,所述终端包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的文件处理方法的步骤。

为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的文件处理方法的步骤。

本发明提出的一种文件处理方法、终端及计算机可读存储介质,在接收到整理运行指令时,获取所述整理运行指令对应的执行目录;生成与所述执行目录对应的第一源文件列表,并判断所述执行目录中是否包括历史源文件列表;若是,则获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件;对所述待执行文件执行整理操作,并根据所述第一源文件列表对所述历史源文件列表进行更新。通过获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件,能够在执行整理操作中,只对未进行过整理操作的文件进行处理,不对曾经执行过整理操作的文件进行处理,极大地降低了操作的时间。

附图说明

图1为本发明文件处理方法第一实施例的流程示意图;

图2为本发明文件处理方法第三实施例步骤S20的细化流程图;

图3为本发明终端的模块结构示意图。

具体实施方式

应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明提供一种文件处理方法,应用于终端,参照图1,图1为本发明文件处理方法第一实施例的流程示意图,所述方法包括步骤:

步骤S10,在接收到整理运行指令时,获取所述整理运行指令对应的执行目录;

所述整理运行指令由用户在操作界面通过选择相应的运行按钮进行发送。用户还可以在操作界面进行相关的设置,如执行目录和预设输出路径等,执行目录即源目录,所述执行目录中包含的文件即为需要进行整理操作的对象,本实施例中的执行目录为processDir;预设输出路径即输出目录,将整理操作后的文件输出至预设输出路径,本实施例中的预设输出路径为outputDir。

步骤S20,生成与所述执行目录对应的第一源文件列表,并判断所述执行目录中是否包括历史源文件列表;

遍历执行目录中的所有文件,并根据各文件的信息生成第一源文件列表;所述第一源文件列表中一一对应记载有所述执行目录中所有文件的信息;所述历史源文件列表为上一次执行整理操作时根据当时的执行目录中的文件形成的源文件列表。本实施例中的第一源文件列表命名和历史源文件列表对应命名为:latestProjectRes.manifest和originProjectRes.manifest。

进一步地,用户在发送整理运行指令时还可以在操作界面选择全量整理或增量整理;若用户选择增量整理,则终端在接收到增量整理的整理运行指令时,开始执行上述步骤S20;若用户选择全量整理,则终端在接收到全量整理的整理运行指令时,无需执行步骤S20的生成源文件列表的操作,而直接对所述执行目录中的所有文件进行整理操作。使得用户能够根据实际需要选择全量或增量整理,提高了方案的灵活性。

步骤S30,若是,则获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件;

当执行目录中存在历史源文件列表时,说明之前已对执行目录中的文件进行过整理操作,此时对于在上次整理操作中已进行过整理操作的文件而言,无需再次执行整理操作;因此需要排除在第一源文件列表中已进行过整理操作的文件,即在所述历史源文件列表中的文件;仅保留在所述第一源文件列表中,且不在所述历史源文件列表中的文件,并将这些文件作为待执行文件。

步骤S40,对所述待执行文件执行整理操作,并根据所述第一源文件列表对所述历史源文件列表进行更新。

在对待执行文件执行整理操作之后,需要将执行了整理操作的文件进行记录,以使得在下次执行整理操作时,能够排除掉这些文件,因此,根据所述第一源文件列表对所述历史源文件列表进行更新;具体地,将第一源文件列表中带执行文件对应的信息增添到所述历史源文件列表中以形成新的历史源文件列表。

本实施例通过获取在所述第一源文件列表中,且不在所述历史源文件列表中的待执行文件,能够在执行整理操作中,只对未进行过整理操作的文件进行处理,不对曾经执行过整理操作的文件进行处理,极大地降低了操作的时间。

进一步地,在基于本发明的第一实施例所提出的本发明文件处理方法第二实施例中,在所述步骤S20之后包括步骤:

步骤S50,若否,则将所述第一源文件列表中的文件作为待执行文件。

当执行目录中不存在历史文件列表时,说明之前并未执行过整理操作,此时执行目录中的所有文件均需执行整理操作;因此执行目录中的所有文件,即第一源文件列表中的文件作为待执行文件。

本实施例在首次执行整理操作时,能够合理地对执行目录中的所有文件均执行整理操作。

进一步地,参见图2,在基于本发明的第一实施例所提出的本发明文件处理方法第三实施例中,所述步骤S20中的所述生成与所述执行目录对应的第一源文件列表的步骤包括:

步骤S21,获取所述执行目录中各文件的文件名以及特征数据;

步骤S22,将各文件的文件名与特征数据进行关联以得到所述第一源文件列表。

文件的文件名由文件名称和文件名后缀组成;所述特征数据用以表征文件的特征,本实施例中,特征数据包括MD5值和文件大小值;将文件对应的文件名和特征数据关联即得到了该关键对应的一组源文件数据;执行目录中所有文件对应的源文件数据的集合即为第一源文件列表。

在判断第一源文件列表中的文件是否在所述历史源文件列表中时,首先通过文件名称来判断第一源文件列表与历史源文件列表中的不同文件,当文件名称不同时,确定两个文件不同;再进一步将文件的MD5值和文件大小值作为依据,来筛选第一源文件列表与历史源文件列表中同名的文件,当MD5值和文件大小值任一项存在不同时,同样认为两个文件不同。

本实施例能够合理地判断第一源文件列表与历史源文件列表中的文件是否相同。

进一步地,在基于本发明的第三实施例所提出的本发明文件处理方法第四实施例中,所述步骤S40包括步骤:

步骤S41,获取各文件名后缀,并根据各文件名后缀判断各文件的处理类型;

步骤S42,按照各文件的处理类型,将各文件划分至对应处理类型的缓冲区中;

步骤S43,对各个缓冲区中的文件进行与所在缓冲区对应的整理操作。

所述步骤S43包括步骤:

步骤S431,当缓冲区为图片类型对应的缓冲区时,将该缓冲区内的文件进行压缩之后输出至该缓冲区对应的预设输出路径;

步骤S432,当缓冲区为JSON文件类型对应的缓冲区时,将该缓冲区内的文件进行压缩之后输出至该缓冲区对应的预设输出路径;

步骤S433,当缓冲区为其它类型对应的缓冲区时,将该缓冲区内的文件进行复制,并将得到的复制文件输出至该缓冲区对应的预设输出路径。

在所述步骤S20之前包括步骤:

步骤S60,将所述预设输出路径清空。

所述整理运行指令中还包括文件分类标准列表;所述文件分类标准列表可以由用户在操作界面进行设置,其表征了文件名后缀与处理类型之间的对应关系。具体地,在本实施例中,所述处理类型包括图片类型、JSON((JavaScript Object Notation,JS对象简谱))文件类型和其它类型;其中,图片类型对应的文件名后缀包括“.jpg”、“.png”、“.gif”和“.ico”;JSON文件类型对应的文件名后缀包括“.json”;划分至其它类型的文件名后缀,或未在所述文件分类标准列表中划分为图片类型或JSON文件类型的文件名后缀即为其它类型对应的文件名后缀,例如“.mp3”和“.ttf”等。可以理解的是,上述文件类型对应的文件名后缀可以根据现有分类规则以及用户的需要进行拓展或删减。需要说明的是,用户可以根据实际需求增加或减少文件类型的种类,例如增加视频类型或文本类型等;同时对应增加或减少缓冲区。

所述整理运行指令中还包括路径列表,其记载了各文件对应的预设输出路径,所述预设输出路径以绝对路径进行标识,以使已整理操作的文件与本次执行整理操作之后的文件的相对路径不发生变化。

在执行整理操作之前,先将预设输出路径中的文件与文件夹进行删除,避免与进行整理操作后的文件产生冲突。同时将各缓冲区进行清楚,同样避免与需要进行整理操作的文件冲突。

本实施例中图片类型对应的缓冲区为IMAGEFILES_CACHE;JSON文件类型对应的缓冲区为JSONFILES_CACHE;其它类型对应的缓冲区为OTHERFILES_CACHE。将图片类型的文件存放在IMAGEFILES_CACHE中,将json类型的文件存放在JSONFILES_CACHE中,将其它类型的文件存放在OTHERFILES_CACHE中。

在将执行目录中的文件划分至对应的缓冲区之后,依次对各缓冲区的文件进行整理操作。具体地,对OTHERFILES_CACHE中的所有文件进行复制操作,并将复制后的文件依次以绝对路径保存至预设输出路径中;然后,将JSONFILES_CACHE中的文件进行压缩,本实施例中通过JDK(Java Development Kit,JAVA开发工具)自带的Deflater对JSONFILES_CACHE中的文件进行压缩,将压缩后的json文件以绝对路径保存至预设输出路径中;最后,依次取出IMAGEFILES_CACHE中的文件进行压缩操作;本实施例中通过图片压缩插件对IMAGEFILES_CACHE中的文件进行压缩操作,本实施例中的图片压缩插件采用imageminJpegtran和imageminPngquant;同时设置插件的质量采取参数quality为[0.5,0.6];将压缩后的图片类型文件以绝对路径保存至预设输出路径中。

本实施例能够合理地对各类型的文件进行整理操作。

进一步地,在基于本发明的第一实施例所提出的本发明文件处理方法第五实施例中,所述方法还包括步骤:

步骤S70,获取所述待执行文件的数量,并在对所述待执行文件执行整理操作的过程中,实时获取已完成整理操作的文件的完成数量;

步骤S80,根据所述待执行文件的数量与所述完成数量得到操作进度;

步骤S90,显示所述操作进度。

所述待执行文件的数量即为本次整理操作的目标处理数量,完成数量以及当前完成进度。实时显示根据所述待执行文件的数量与所述完成数量得到操作进度即可使用户能够实时观察操作进行的情况。所述操作进度可以采用百分比的方式显示;还可以采用具体的完成比例数进行显示,即分子为完成数量,分母为待执行文件的数量。进一步地,还可以对各个缓冲区单独进行操作进度的显示。用户可以根据实际需要选用合适的显示方式,在此不做限制。

本实施例能够使用户清晰地看到整个流程,文件的整理进度。

进一步地,在基于本发明的第五实施例所提出的本发明文件处理方法第六实施例中,在所述步骤S20中判断执行目录中是否包括历史源文件列表的步骤之前包括步骤:

步骤S23,判断所述执行目录是否为空目录;

步骤S24,若是,则显示空目录提示信息;

步骤S25,若否,则执行步骤:判断执行目录中是否包括历史源文件列表。

当所述执行目录为空目录时,说明此时执行目录中不存在文件,因此显示空目录提示信息以提醒用户执行目录是否设置错误。当执行目录不为空目录时,则可开始执行整理操作。

本实施例能够在用户设置执行目录错误时提醒用户,以使用户能够及时进行排查。

参照图3,在硬件结构上所述终端可以包括通信模块10、存储器20以及处理器30等部件。在所述终端中,所述处理器30分别与所述存储器20以及所述通信模块10连接,所述存储器20上存储有计算机程序,所述计算机程序同时被处理器30执行,所述计算机程序执行时实现上述方法实施例的步骤。

通信模块10,可通过网络与外部通讯设备连接。通信模块10可以接收外部通讯设备发出的请求,还可以发送请求、指令及信息至所述外部通讯设备,所述外部通讯设备可以是其它终端、服务器或者物联网设备,例如电视等等。

存储器20,可用于存储软件程序以及各种数据。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如生成与所述执行目录对应的第一源文件列表,并判断所述执行目录中是否包括历史源文件列表)等;存储数据区可包括数据库,存储数据区可存储根据系统的使用所创建的数据或信息等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

处理器30,是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器20内的软件程序和/或模块,以及调用存储在存储器20内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。处理器30可包括一个或多个处理单元;可选地,处理器30可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器30中。

尽管图3未示出,但上述终端还可以包括电路控制模块,所述电路控制模块用于与电源连接,保证其他部件的正常工作。本领域技术人员可以理解,图3中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

本发明还提出一种计算机可读存储介质,其上存储有计算机程序。所述计算机可读存储介质可以是图3的终端中的存储器20,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机可读存储介质包括若干指令用以使得一台具有处理器的终端设备(可以是电视,汽车,手机,计算机,服务器,终端,或者网络设备等)执行本发明各个实施例所述的方法。

在本发明中,术语“第一”“第二”“第三”“第四”“第五”仅用于描述的目的,而不能理解为指示或暗示相对重要性,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,本发明保护的范围并不局限于此,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改和替换,这些变化、修改和替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种图形特征的动画文件查找系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!