一种基于ROM的网页压缩和存储方法及系统
文献发布时间:2023-06-19 10:41:48
技术领域
本发明涉及网络通信技术领域,更具体地,涉及一种基于ROM的网页压缩和存储方法及系统。
背景技术
嵌入式设备在网络技术领域有着广泛的应用,越来越多的嵌入式设备基于B/S架构来提供参数设置和显示接口,但是嵌入式设备的硬件资源往往很有限,限制了web页面的设计,特别是对一些硬件架构已成型的产品,想要进一步增添web页面,却常常遇到存储空间不够的情况。
因此,现在亟需一种基于ROM的网页压缩和存储方法及系统来解决这一问题。
发明内容
本发明提供一种基于ROM的网页压缩和存储方法及系统,可以存储更多更丰富的web资源,无需更改硬件,并且将web资源进行代码化,使该方法同样适用于无文件系统的设备。
第一方面,本发明实施例提供一种基于ROM的网页压缩和存储方法,包括:
基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;
将所述编码序列转换成为编程语言写成的代码文件;
基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
其中,所述方法还包括:
对所述web文件进行预处理,保留代码部分。
其中,对所述web文件进行预处理,保留代码部分,包括:
将所述web文件中的文本文档所有换行、空格以及注释剔除,只保留需要机器执行的代码部分。
其中,所述基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列,包括:
所述编码表由预先统计出所述web文件中各个字符出现的概率,以定义字符的编码序列制成,其中,出现概率越高的字符,其编码序列越短。
其中,所述将所述编码序列转换成为编程语言写成的代码文件,包括:
利用数组存储编码序列对应的二进制数,每一个web文件对应一个二进制数组;
将所述二进制数组生成为代码文件。
其中,所述基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端,包括:
遍历编码数组,找到对应的web资源;
基于预构建的解码系统将数组中的二进制序列还原为字符,并回复给web服务器,最终反馈给客户端。
第二方面,本发明实施例提供一种基于ROM的网页压缩和存储系统,包括:
编码转换模块,用于基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;
代码转换模块,用于将所述编码序列转换成为编程语言写成的代码文件;
解码模块,用于基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一方面所提供的一种基于ROM的网页压缩和存储方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面所提供的一种基于ROM的网页压缩和存储方法的步骤。
本发明实施例提供的一种基于ROM的网页压缩和存储方法及系统,通过此方法可以存储更多更丰富的web资源,无需更改硬件,并且将web资源进行代码化,使该方法同样适用于无文件系统的设备。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于ROM的网页压缩和存储方法流程示意图;
图2是本发明实施例提供的系统流程图;
图3是本发明实施例提供的一种基于ROM的网页压缩和存储系统结构示意图;
图4是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
图1是本发明实施例提供的一种基于ROM的网页压缩和存储方法流程示意图,如图1所示,包括:
101、基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;
102、将所述编码序列转换成为编程语言写成的代码文件;
103、基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
图2是本发明实施例提供的系统流程图,如图2所示,在遇到存储空间不足的情况下,本发明实施例通过编码算法对web文件进行编码压缩,在固定的ROM中存储更多更丰富的web页面文件,并进一步将编码后的文件转化为C代码,摆脱对文件系统的依赖。
具体的,在步骤101中,本发明实施例对编写好的web文件进行编码转换,然后在步骤102中进行C代码转换,最后在步骤103中进行解码,步骤101和步骤102在编译环境中完成,步骤103在目标设备中完成。
本发明实施例提供的一种基于ROM的网页压缩和存储方法及系统,通过此方法可以存储更多更丰富的web资源,无需更改硬件,并且将web资源进行代码化,使该方法同样适用于无文件系统的设备。
在上述实施例的基础上,所述方法还包括:
对所述web文件进行预处理,保留代码部分。
在上述实施例的基础上,对所述web文件进行预处理,保留代码部分,包括:
将所述web文件中的文本文档所有换行、空格以及注释剔除,只保留需要机器执行的代码部分。
具体的,本发明实施例对编写好的web文件会进行预处理,主要针对html、CSS、js等文本文件。预处理阶段会将这些文本文档中的所有换行、空格、注释等便于人们查看代码的符号和文本统统剔除,只保留最核心的需要机器执行的代码部分。
在上述实施例的基础上,所述基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列,包括:
所述编码表由预先统计出所述web文件中各个字符出现的概率,以定义字符的编码序列制成,其中,出现概率越高的字符,其编码序列越短。
具体的,web文件通常是utf-8、unicode或gbk这类编码来描述,每个字符对应固定长度的编码序列,存储介质中存储的就是这些编码序列。对于已经写好的web文件,其中每个字符出现的概率是不同的,如果每个字符均按照一定长度来进行编码存储,必然会有空间的浪费。基于此,可以事先统计出这些文件中各个字符出现的概率,来自定义这些字符的编码序列,编制一个编码表,原则为:出现概率越高的字符,其编码序列越短。经过如此编码后,web文件便被压缩了,每一个web文件的编码序列可以暂存到文件中,作为后续的输入。
在上述实施例的基础上,所述将所述编码序列转换成为编程语言写成的代码文件,包括:
利用数组存储编码序列对应的二进制数,每一个web文件对应一个二进制数组;
将所述二进制数组生成为代码文件。
具体的,对上述的编码文件进行转换。编码文件中的编码序列是一片连续的二进制数,在编程语言中,可以用数组来存储这组二进制数,每一个web文件对应一个数组,最终形成一个代码文件。这个代码文件可以和web服务器程序一起编译,使web文件成为执行程序的一部分,存储到ROM中,摆脱对文件系统的依赖。
在上述实施例的基础上,所述基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端,包括:
遍历编码数组,找到对应的web资源;
基于预构建的解码系统将数组中的二进制序列还原为字符,并回复给web服务器,最终反馈给客户端。
具体的,本发明实施例构建解码系统,web服务器接收到客户端请求后,将相应的请求发送该解码系统,解码系统通过遍历编码数组,找到对应的web资源,并通过编码表进行解码,将数组中的二进制序列还原为字符,回复给web服务器,最终反馈给客户端。
图3是本发明实施例提供的一种基于ROM的网页压缩和存储系统结构示意图,如图3所示,包括:编码转换模块301、代码转换模块302、以及解码模块303,其中:
编码转换模块301用于基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;
代码转换模块302用于将所述编码序列转换成为编程语言写成的代码文件;
解码模块303用于基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
具体的如何利用编码转换模块301、代码转换模块302、以及解码模块303对基于ROM的网页压缩和存储可参见上述方法实施例,本发明实施例在此不再赘述。
在一个实施例中,基于相同的构思,本发明实施例还提供了一种电子设备,如图4所示,图4示例了一种电子设备的结构示意图,电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和总线404,其中,处理器401,通信接口402,存储器403通过总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行如下异源高精度地图间的路网匹配方法的步骤,例如包括:基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;将所述编码序列转换成为编程语言写成的代码文件;基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
在一个实施例中,基于相同的构思,本实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的异源高精度地图间的路网匹配方法的步骤,例如包括:基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;将所述编码序列转换成为编程语言写成的代码文件;基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。在一个实施例中,基于相同的构思,本发明实施例还提供一种非暂态计算机可读存储介质,该计算机可读存储介质存储有计算机程序,所述计算机程序被计算机执行时,使得计算机执行上述各实施例所提供的异源高精度地图间的路网匹配方法的步骤,例如包括:基于预先编制的编码表,将web文件进行编码转换,得到每一个web文件的编码序列;将所述编码序列转换成为编程语言写成的代码文件;基于预构建的解码系统,将所述代码文件解码成对应的web资源,反馈给客户端。
本发明的各实施方式可以任意进行组合,以实现不同的技术效果。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
- 一种基于ROM的网页压缩和存储方法及系统
- 一种网页数据压缩存储方法和系统