批量提取swf文件中的jpg图片和mp3文件的方法

文档序号:6373426阅读:1008来源:国知局
专利名称:批量提取swf文件中的jpg图片和mp3文件的方法
技术领域
本发明涉及互联网应用技术领域,尤其涉及一种批量提取SWf文件中的jpg图片和mp3文件的方法。
背景技术
出于编辑、修改等目的,经常需要从swf文件中提取出其包含的jpg图片和mp3文件。但是现有技术中,还没有一种能够从swf文件中完整的提取所有jpg图片和mp 3文件的工具,而当使用者需要从一个swf文件中提取一个jpg图片或一个mp3文件时通常是针对特定的swf文件,自行编写一个swf程序,用该程序在本地对swf文件进行处理,从 而提取其中的jpg图片或mp3文件。但如果需要对多个swf文件进行提取的话,只能一个一个的单独处理;这种单个本地处理方式,如果在需要处理的文件只有几个的情况下还是可以接受的,但如果需要处理大批量的文件(比如几十个甚至几百个甚至更多)的情况下,此种单个处理swf文件的方式就显得太费时费力了。而且这种自行编写的程序无法应对所有的swf文件,所以其具有很大的局限性,无法批量应用,并且对提取出的文件的完整性也无法保证。swf文件即以“ swf”结尾的文件,Swf即“shock wave flash”的缩写,是Macromedia (现已被ADOBE公司收购)公司的动画设计软件Flash的专用格式,是一种支持矢量和点阵图形的动画文件格式,被广泛应用于网页设计,动画制作等领域。

发明内容
本发明的目的在于提供一种可以批量提取多个swf文件中的jpg图片和mp3文件的方法,从而解决现有技术中存在的前述问题。为了实现上述目的,本发明采用的技术方案如下一种批量提取swf文件中的jpg图片和mp3文件的方法,包括以下步骤SI,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源SWf文件;S2,以二进制流方式读取所述源swf文件集合中的一个源swf文件;S3,解析S2中读取到的所述源SWf文件的文件头,得到文件头信息;S4,根据所述文件头信息,解析所述源swf文件中的所有标签,得到所有标签信息;S5,依次判断所述所有标签的类型,如果所述标签的类型为DefineBitsJPEG2,则提取所述标签中的jpg图片数据,并将所述jpg图片数据保存为jpg文件;如果所述标签的类型为DefineSound,则提取所述标签中的mp3音频数据,并将所述mp3音频数据保存为mp3文件;如果所述标签的类型为End标签,则执行下一步;
S6,重复S2-S5,直到处理完毕所述源swf文件集合中的所有源swf文件,然后结束。优选的,S3和S4之间还有以下步骤根据所述文件头信息,判断所述源swf文件是否被压缩过;如果被压缩过,则先对其解压缩后再进行下一步;如果没有被压缩过,则直接进行下一步。优选的,所述jpg图片数据是所述类型为DefineBitsJPEG2的标签中的ImageData标签中的数据。优选的,所述mp3音频数据是所述类型为DefineSound的标签中的SoundData标签中的数据。优选的,S5中将所述jpg文件和mp3文件保存到与所述源swf文件同级的result文件夹中。优选的,S6后还包括如下步骤S7,将保存的所述jpg文件和mp3文件直接发送给所述请求端和/或将保存的所述j Pg文件和mp3文件打包后发送给所述请求端。本发明的有益效果是对多swf文件同时处理,大大减少了工作时间、提高了工作效率;可设置于服务器中,由服务器处理多个请求端的请求,从而提高了服务器的资源使用率,减少了服务器资源闲置浪费的时间;由于可以设置于服务器中,从而也方便了以后维护和升级。


图I是本明的步骤流程图。
具体实施例方式为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式
仅仅用以解释本发明,并不用于限定本发明。swf文件结构,如下表
权利要求
1.一种批量提取SWf文件中的jpg图片和mp3文件的方法,其特征在于,包括以下步骤 SI,接收请求端上传的源swf文件集合,所述源swf文件集合包括一个以上的源swf文件; S2,以二进制流方式读取所述源swf文件集合中的一个源swf文件; S3,解析S2中读取到的所述源swf文件的文件头,得到文件头信息; S4,根据所述文件头信息,解析所述源swf文件中的所有标签,得到所有标签信息; S5,依次判断所述所有标签的类型,如果所述标签的类型为DefineBitsJPEG2,则提取所述标签中的jpg图片数据,并将所述jpg图片数据保存为jpg文件;如果所述标签的类型为DefineSound,则提取所述标签中的mp3音频数据,并将所述mp3音频数据保存为mp3文件;如果所述标签的类型为End标签,则执行下一步; S6,重复S2-S5,直到处理完毕所述源swf文件集合中的所有源swf文件,然后结束。
2.根据权利要求I所述的批量提取swf文件中的jpg图片和mp3文件的方法,其特征在于,S3和S4之间还有以下步骤 根据所述文件头信息,判断所述源swf 文件是否被压缩过;如果被压缩过,则先对其解压缩后再进行下一步;如果没有被压缩过,则直接进行下一步。
3.根据权利要求I所述的批量提取swf文件中的jpg图片和mp3文件的方法,其特征在于,所述jpg图片数据是所述类型为DefineBitsJPEG2的标签中的ImageData标签中的数据。
4.根据权利要求I所述的批量提取swf文件中的jpg图片和mp3文件的方法,其特征在于,所述mp3音频数据是所述类型为DefineSound的标签中的SoundData标签中的数据。
5.根据权利要求I所述的批量提取swf文件中的jpg图片和mp3文件的方法,其特征在于,S5中将所述jpg文件和mp3文件保存到与所述源swf文件同级的result文件夹中。
6.根据权利要求I所述的批量提取swf文件中的jpg图片和mp3文件的方法,其特征在于,S6后还包括如下步骤 S7,将保存的所述jpg文件和mp3文件直接发送给所述请求端和/或将保存的所述jpg文件和mp3文件打包后发送给所述请求端。
全文摘要
一种批量提取swf文件中的jpg图片和mp3文件的方法,包括步骤S1,接收请求端上传的源swf文件集合;S2,以二进制流方式读取所述源swf文件集合中的一个源swf文件;S3,解析S2中读取到的所述源swf文件的文件头,得到文件头信息;S4,根据所述文件头信息,解析所述源swf文件中的所有标签,得到所有标签信息;S5,依次判断所述所有标签的类型,如果所述标签的类型为DefineBitsJPEG2,则提取所述标签中的jpg图片数据,并将所述jpg图片数据保存为jpg文件;如果所述标签的类型为DefineSound,则提取所述标签中的mp3音频数据,并将所述mp3音频数据保存为mp3文件;如果所述标签的类型为End标签,则执行下一步;S6,重复S2-S5,直到处理完毕所述源swf文件集合中的所有源swf文件,然后结束。
文档编号G06F17/30GK102799672SQ20121024797
公开日2012年11月28日 申请日期2012年7月17日 优先权日2012年7月17日
发明者马华亨 申请人:厦门游家网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1