CN102752312B - 一种批量解压缩swf文件的方法 - Google Patents
一种批量解压缩swf文件的方法 Download PDFInfo
- Publication number
- CN102752312B CN102752312B CN201210247803.8A CN201210247803A CN102752312B CN 102752312 B CN102752312 B CN 102752312B CN 201210247803 A CN201210247803 A CN 201210247803A CN 102752312 B CN102752312 B CN 102752312B
- Authority
- CN
- China
- Prior art keywords
- file
- swf file
- source
- compressed
- swf
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种批量解压缩swf文件的方法,包括以下步骤:S1,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源swf文件;S2,依次判断所述源swf文件集合中的各个所述源swf文件是否已经被压缩过;如果判断为已经被压缩过,则执行S3;如果判断为没有被压缩过,则继续对下一个所述源swf文件进行判断;S3,对已经被压缩过的所述源swf文件进行解压缩处理,解压缩完毕后继续对下一个已经被压缩过的所述源swf文件进行解压缩处理;S4,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件发送至所述请求端,提高了工作效率。
Description
技术领域
本发明涉及互联网应用技术领域,尤其涉及一种批量解压缩swf文件的方法。
背景技术
目前需要对swf文件修改时,通常需要先对压缩过的swf解压缩后才能修改或编辑。在现有的技术当中,如果需要对swf文件解压缩的话,通常是在本地利用软件直接对swf文件解压缩,或自行编写一个swf程序,用该程序在本地对文件解压缩。而如果需要对多个swf文件进行解压缩处理的话,现有技术中都是对每一个swf文件分别处理;
这种单个本地处理方式,如果在需要处理的文件只有几个的情况下还是可以接受的,但如果需要处理大批量的文件(比如几十个甚至几百个甚至更多)的情况下,此种单个处理swf文件的方式就显得太费时费力了。
发明内容
本发明的目的在于提供一种批量解压缩swf文件的方法,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明采用的技术方案如下:
一种批量解压缩swf文件的方法,包括以下步骤:
S1,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源swf文件;
S2,依次判断所述源swf文件集合中的各个所述源swf文件是否已经被压缩过;
如果判断为已经被压缩过,则执行S3;如果判断为没有被压缩过,则继续对下一个所述源swf文件进行判断,直到判断完毕所述源swf文件集合中的所有所述源swf文件,然后执行S4;
S3,对已经被压缩过的所述源swf文件进行解压缩处理,解压缩完毕后继续对下一个已经被压缩过的所述源swf文件进行解压缩处理,直到处理完毕所述源swf文件集合中的所有已经被压缩过的所述源swf文件;然后执行S4;
S4,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件发送至所述请求端。
优选的,S1和S2之间还包括以下步骤:
为接收到的所述源swf文件集合中的各个所述swf文件分配顺序编号;
按照所述顺序编号依次处理各个所述源swf文件。
优选的,S2具体包括以下步骤:
S21,根据所述顺序编号确定当前需要处理的源swf文件;
S22,以二进制流方式读取所述当前需要处理的源swf文件;
S23,解析所述当前需要处理的源swf文件的文件头,得到文件头信息;
S24,如果所述文件头信息中的前三个字节为“CWS”,则确定所述文件头信息所对应的源swf文件是已经被压缩过的源swf文件;如果所述文件头信息中的前三个字节为“FWS”,则确定所述文件头信息所对应的源swf文件是没有被压缩过的源swf文件。
优选的,S3具体包括以下步骤:
S31,将需要解压缩的源swf文件中从第九个字节到所述源swf文件尾的全部内容读入到内存中;
S32,调用zlib库的解压缩函数uncompress,对所述读入到内存中的内容进行解压缩处理;
S33,解压缩处理完毕后,将解压缩后得到的内容与所述第九个字节之前的字节合并,同时将最前边的三个字节修改为“FWS”,最终得到完整的经过解压缩的目标swf文件。
优选的,S4具体包括以下步骤:
S41,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件打包成一个文件压缩包;
S42,将所述文件压缩包发送至所述请求端。
优选的,所述文件压缩包为zip压缩包。
优选的,在S1前还包括以下步骤:
接收包含有多个所述源swf文件的文件压缩包;
解压缩所述文件压缩包,得到所述源swf文件集合。
优选的,所述文件压缩包为zip压缩包。
本发明的有益效果是:
本发明将解压缩处理过程从本地移至服务器中执行,并加以批处理策略,从而实现了批量的快速的解压缩swf文件的目的,通过本发明所提供的技术方案可以快速的对大量swf文件进行解压缩处理,提高了工作效率;
解压缩处理过的swf文件,可以直接对其进行修改等操作;
另外由于解压缩过程是在服务器中执行,所以可以处理多个请求端的请求,从而提高了服务器的资源使用率,减少了服务器资源闲置浪费的时间。
附图说明
图1是本发明的步骤流程图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明的批量解压缩swf文件的方法,包括以下步骤:
S1,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源swf文件;为了提高源swf文件的上传速度,在上传前还可以把需要上传的源swf文件打包成一个zip文件包,批处理服务器接收到所述zip文件包后,将其解压缩,得到源swf文件集合。然后为接收到的所述源swf文件集合中的各个所述swf文件分配顺序编号;按照所述顺序编号依次处理各个所述源swf文件。
S2,依次判断所述源swf文件集合中的各个所述源swf文件是否已经被压缩过;
如果判断为已经被压缩过,则执行S3;如果判断为没有被压缩过,则继续对下一个所述源swf文件进行判断,直到判断完毕所述源swf文件集合中的所有所述源swf文件,然后执行S4;
具体的,S2又包括以下步骤:
S21,根据所述顺序编号确定当前需要处理的源swf文件;
S22,以二进制流方式读取所述当前需要处理的源swf文件;
S23,解析所述当前需要处理的源swf文件的文件头,得到文件头信息;
S24,如果所述文件头信息中的前三个字节为“CWS”,则确定所述文件头信息所对应的源swf文件是已经被压缩过的源swf文件;如果所述文件头信息中的前三个字节为“FWS”,则确定所述文件头信息所对应的源swf文件是没有被压缩过的源swf文件。
S3,对已经被压缩过的所述源swf文件进行解压缩处理,解压缩完毕后继续对下一个已经被压缩过的所述源swf文件进行解压缩处理,直到处理完毕所述源swf文件集合中的所有已经被压缩过的所述源swf文件;然后执行S4;S3具体包括以下步骤:
S31,将需要解压缩的源swf文件中从第九个字节到所述源swf文件尾的全部内容读入到内存中;
S32,调用zlib库的解压缩函数uncompress,对所述读入到内存中的内容进行解压缩处理;
S33,解压缩处理完毕后,将解压缩后得到的内容与所述第九个字节之前的字节合并,同时将最前边的三个字节修改为“FWS”,最终得到完整的经过解压缩的目标swf文件。
S4,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件发送至所述请求端。S4具体包括以下步骤:
S41,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件打包成一个zip压缩包;
S42,将所述zip压缩包文件发送至所述请求端。这样可以提高文件的发送速度。当然S4中也可以是请求端从所述批处理服务器下载所述zip压缩文件。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:
本发明将解压缩处理过程从本地移至服务器中执行,并加以批处理策略,从而实现了批量的快速的解压缩swf文件的目的,通过本发明所提供的技术方案可以快速的对大量swf文件进行解压缩处理,提高了工作效率;
解压缩处理过的swf文件,可以直接对其进行修改等操作;
另外由于解压缩过程是在服务器中执行,所以可以处理多个请求端的请求,从而提高了服务器的资源使用率,减少了服务器资源闲置浪费的时间。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (4)
1.一种批量解压缩swf文件的方法,其特征在于,包括以下步骤:
S1,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源swf文件;
S2,依次判断所述源swf文件集合中的各个所述源swf文件是否已经被压缩过;
如果判断为已经被压缩过,则执行S3;如果判断为没有被压缩过,则继续对下一个所述源swf文件进行判断,直到判断完毕所述源swf文件集合中的所有所述源swf文件,然后执行S4;
S3,对已经被压缩过的所述源swf文件进行解压缩处理,解压缩完毕后继续对下一个已经被压缩过的所述源swf文件进行解压缩处理,直到处理完毕所述源swf文件集合中的所有已经被压缩过的所述源swf文件;然后执行S4;
S4,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件发送至所述请求端;
其中,所述的S1和S2之间还包括以下步骤:为接收到的所述源swf文件集合中的各个所述swf文件分配顺序编号;按照所述顺序编号依次处理各个所述源swf文件;
所述的S2具体包括以下步骤:
S21,根据所述顺序编号确定当前需要处理的源swf文件;
S22,以二进制流方式读取所述当前需要处理的源swf文件;
S23,解析所述当前需要处理的源swf文件的文件头,得到文件头信息;
S24,如果所述文件头信息中的前三个字节为“CWS”,则确定所述文件头信息所对应的源swf文件是已经被压缩过的源swf文件;如果所述文件头信息中的前三个字节为“FWS”,则确定所述文件头信息所对应的源swf文件是没有被压缩过的源swf文件;
所述的S3具体包括以下步骤:
S31,将需要解压缩的源swf文件中从第九个字节到所述源swf文件尾的全部内容读入到内存中;
S32,调用zlib库的解压缩函数uncompress,对所述读入到内存中的内容进行解压缩处理;
S33,解压缩处理完毕后,将解压缩后得到的内容与所述第九个字节之前的字节合并,同时将最前边的三个字节修改为“FWS”,最终得到完整的经过解压缩的目标swf文件;
所述的S4具体包括以下步骤:
S41,将经S2判断为没有被压缩过的所述源swf文件和经S3解压缩处理过并生成的目标swf文件打包成一个文件压缩包;
S42,将所述文件压缩包发送至所述请求端。
2.根据权利要求1所述的批量解压缩swf文件的方法,其特征在于,所述文件压缩包为zip压缩包。
3.根据权利要求1所述的批量解压缩swf文件的方法,其特征在于,在S1前还包括以下步骤:
接收包含有多个所述源swf文件的文件压缩包;
解压缩所述文件压缩包,得到所述源swf文件集合。
4.根据权利要求3所述的批量解压缩swf文件的方法,其特征在于,所述文件压缩包为zip压缩包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210247803.8A CN102752312B (zh) | 2012-07-17 | 2012-07-17 | 一种批量解压缩swf文件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210247803.8A CN102752312B (zh) | 2012-07-17 | 2012-07-17 | 一种批量解压缩swf文件的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102752312A CN102752312A (zh) | 2012-10-24 |
CN102752312B true CN102752312B (zh) | 2015-04-22 |
Family
ID=47032211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210247803.8A Active CN102752312B (zh) | 2012-07-17 | 2012-07-17 | 一种批量解压缩swf文件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102752312B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294538B (zh) * | 2013-05-09 | 2017-03-01 | 四三九九网络股份有限公司 | swf文件中防止导入密码锁批量去除的方法及装置 |
CN103294539B (zh) * | 2013-05-09 | 2016-04-06 | 四三九九网络股份有限公司 | 批量解密flash游戏的方法和装置 |
CN103294772B (zh) * | 2013-05-09 | 2017-02-15 | 四三九九网络股份有限公司 | swf文件中防导入密码锁批量替换的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594537A (zh) * | 2009-06-04 | 2009-12-02 | 京北方科技股份有限公司 | 海量图像数据压缩方法 |
JP4451722B2 (ja) * | 2004-06-08 | 2010-04-14 | 三菱電機株式会社 | データベースサーバ及びデータベースシステム |
-
2012
- 2012-07-17 CN CN201210247803.8A patent/CN102752312B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4451722B2 (ja) * | 2004-06-08 | 2010-04-14 | 三菱電機株式会社 | データベースサーバ及びデータベースシステム |
CN101594537A (zh) * | 2009-06-04 | 2009-12-02 | 京北方科技股份有限公司 | 海量图像数据压缩方法 |
Non-Patent Citations (1)
Title |
---|
SWF文件结构解析;徐杏芳;《福建电脑》;20110630;正文第68页第3节以及表1 * |
Also Published As
Publication number | Publication date |
---|---|
CN102752312A (zh) | 2012-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105590051B (zh) | 用于可信执行环境的可信应用生成及安装方法 | |
CN102761540A (zh) | 数据压缩方法、装置、系统以及服务器 | |
WO2008063815A3 (en) | Optimizing static dictionary usage for signal, http and bytecode compression in a wireless network | |
CN102752312B (zh) | 一种批量解压缩swf文件的方法 | |
WO2012048541A1 (zh) | 一种软件版本升级方法、终端及系统 | |
CN107506284B (zh) | 日志处理方法及装置 | |
CN101197773B (zh) | 基于多链路的报文压缩发送和接收解压缩方法及系统 | |
CN101398807B (zh) | 解压移动终端压缩包的方法和装置 | |
CN105376244A (zh) | 一种以基于云端服务器进行人工智能和物理仿真计算的网络游戏实现方法 | |
CN106851733A (zh) | 一种针对移动网络应用的自适应http消息压缩方法 | |
CN102799673B (zh) | 一种批量压缩swf文件的方法 | |
CN103501247A (zh) | 一种高并发请求处理方法及装置 | |
CN102891683A (zh) | 一种变电站数据帧的压缩方法及装置 | |
CN100401671C (zh) | 一种文件传送方法 | |
CN103906007B (zh) | 一种彩信转发方法及装置 | |
JP2018502402A (ja) | システムファームウェアのプログラミングスピードを速める方法 | |
CN101827128A (zh) | 一种文件网络传输中分块下载和匹配的方法 | |
CN101256501A (zh) | 软件解压缩启动方法 | |
CN101997646A (zh) | 基于usb和nand flash的数据打包和传输的方法 | |
CN108628617A (zh) | 一种安卓应用程序的多渠道打包方法 | |
CN103428676A (zh) | 手机终端网络下载系统的实现方法 | |
CN103225603B (zh) | 无线测控方法及系统 | |
CN206757592U (zh) | 一种数据处理系统 | |
CN110995870A (zh) | 一种基于rpa机器人的非结构化数据管理的方法 | |
CN101540613B (zh) | 一种数据压缩方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: 4399 NETWORK CO., LTD. Free format text: FORMER NAME: XIAMEN YOUJIA NETWORK CO., LTD. |
|
CP01 | Change in the name or title of a patent holder |
Address after: 361008 Fujian city of Xiamen province Xiamen torch Software Park, hi tech Zone two expected Road No. 2 building 202 room Patentee after: 4399 Network Co., Ltd. Address before: 361008 Fujian city of Xiamen province Xiamen torch Software Park, hi tech Zone two expected Road No. 2 building 202 room Patentee before: Xiamen Youjia Network Co., Ltd. |