掌桥专利:专业的专利平台
掌桥专利
首页

一种通用流文件处理框架

文献发布时间:2023-06-19 12:05:39


一种通用流文件处理框架

技术领域

本发明涉及计算机数据安全的技术领域,特别是涉及一种通用流文件处理框架。

背景技术

随着数据安全越来越重要,对于文档文件的检查也越来越重要,目前比较通用的文档文件,docx、pptx,xlsx,vsdx,pdf等都是流文档文件,压缩文件zip,rar,tar,gz,bz2,xz也是支持流的,所以需要一种通用的流文件处理框架来处理这些文件。

发明内容

为解决上述技术问题,本发明提供一种避免同时使用大量的CPU资源,降低内存的使用,提高文件数据安全性的一种通用流文件处理框架。

本发明的一种通用流文件处理框架,流文件处理框架解析器包括创建接口、文件流输入接口、关闭接口、解析输出回调接口、内嵌文件开始回调接口、内嵌文件数据流回调接口和内嵌文件结束回调接口。

本发明的一种通用流文件处理框架,所述创建接口,创建解析器时,需要提供当前文件的文件名和文件类型。

本发明的一种通用流文件处理框架,所述文件流输入接口,按照文件流顺序输入任意字节的数据。

本发明的一种通用流文件处理框架,所述关闭接口,在到达文件结尾时,销毁解析器。

本发明的一种通用流文件处理框架,所述解析输出回调接口,在解析到有用数据时,解析器会回调此接口将数据输出。

本发明的一种通用流文件处理框架,所述内嵌文件开始回调接口,在解析器判断当前文件流为内嵌文件开始时,则调用此回调接口通知使用者有新的内嵌文件,会创建新的解析器,将新的解析器挂接到当前解析器的下一层。

本发明的一种通用流文件处理框架,所述内嵌文件数据流回调接口,在解析器判断当前文件流为内嵌文件数据时,测调用此回调接口将数据传递给下一层解析器。

本发明的一种通用流文件处理框架,所述内嵌文件结束回调接口,在解析器判断当前文件流为内嵌文件结束时,则调用此回调接口将下一层解析器销毁。

与现有技术相比本发明的有益效果为:用于处理流文档文件以及流压缩文件,文件流可以被分成随机的字节流顺序分时输入,框架内部通过状态机的方式处理文件,通过回调的方式返回数据提取的数据流,避免同时使用大量的CPU资源,降低内存的使用,提高文件数据安全性。

附图说明

图1是本发明的单文件解析结构示意图;

图2是本发明的多层文件解析结构示意图;

图3是本发明解析器解析工作流程示意图1;

图4是本发明解析器解析工作流程示意图2;

图5是本发明解析器解析工作流程示意图3;

图6是本发明解析器解析工作流程示意图4;

图7是本发明解析器解析工作流程示意图5;

图8是本发明解析器解析工作流程示意图6;

图9是本发明解析器解析工作流程示意图7;

图10是本发明解析器解析工作流程示意图8。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1至图10所示,本发明的一种通用流文件处理框架,流文件处理框架解析器包括创建接口、文件流输入接口、关闭接口、解析输出回调接口、内嵌文件开始回调接口、内嵌文件数据流回调接口和内嵌文件结束回调接口;用于处理流文档文件以及流压缩文件,文件流可以被分成随机的字节流顺序分时输入,框架内部通过状态机的方式处理文件,通过回调的方式返回数据提取的数据流,避免同时使用大量的CPU资源,降低内存的使用,提高文件数据安全性。

本发明的一种通用流文件处理框架,所述创建接口,创建解析器时,需要提供当前文件的文件名和文件类型。

本发明的一种通用流文件处理框架,所述文件流输入接口,按照文件流顺序输入任意字节的数据。

本发明的一种通用流文件处理框架,所述关闭接口,在到达文件结尾时,销毁解析器。

本发明的一种通用流文件处理框架,所述解析输出回调接口,在解析到有用数据时,解析器会回调此接口将数据输出。

本发明的一种通用流文件处理框架,所述内嵌文件开始回调接口,在解析器判断当前文件流为内嵌文件开始时,则调用此回调接口通知使用者有新的内嵌文件,会创建新的解析器,将新的解析器挂接到当前解析器的下一层。

本发明的一种通用流文件处理框架,所述内嵌文件数据流回调接口,在解析器判断当前文件流为内嵌文件数据时,测调用此回调接口将数据传递给下一层解析器。

本发明的一种通用流文件处理框架,所述内嵌文件结束回调接口,在解析器判断当前文件流为内嵌文件结束时,则调用此回调接口将下一层解析器销毁。

本发明的一种通用流文件处理框架,其在工作时,假设有一个zip文件,里边压缩了两个文本文件,首先文件开始时创建一个zip解析器,之后zip文件的数据流通过zip解析器的文件流输入接口输入,zip解析器在解析到第一个嵌入文件头的结尾时,这时已经解析出文件大小和文件名称,这时创建第二层解析器,txt解析器,然后zip解析器解压第一个嵌入文件的文件体,并传递给第二层解析器,第二层解析器,直接输出解压数据,之后zip解析器判断数据流在到达第一个文件结尾时,zip解析器输出销毁第二层解析器的命令,销毁第二层解析器,然后zip解析器在解析到第二个嵌入文件头的结尾时,这时已经解析出文件大小和文件名称,这时创建第二层解析器,txt解析器,之后zip解析器解压第二个嵌入文件的文件体,并传递给第二层解析器,第二层解析器,直接输出解压数据,然后在到达第二个文件结尾时,第一层解析器输出销毁第二层解析器的命令,销毁第二层解析器,然后销毁第一层解析器。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。

相关技术
  • 一种通用流文件处理框架
  • 一种基于工作流引擎实现的通用框架
技术分类

06120113162279