[发明专利]一种基于JAVA语言的中文压缩解压缩方法及装置有效
申请号: | 201611025650.7 | 申请日: | 2016-11-17 |
公开(公告)号: | CN106776730B | 公开(公告)日: | 2020-01-17 |
发明(设计)人: | 王同庆 | 申请(专利权)人: | 中国银行股份有限公司 |
主分类号: | G06F16/16 | 分类号: | G06F16/16;G06F16/174 |
代理公司: | 11127 北京三友知识产权代理有限公司 | 代理人: | 郭晓宇 |
地址: | 100818 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 java 语言 中文 压缩 解压缩 方法 装置 | ||
本发明提供了一种基于JAVA语言的中文压缩解压缩方法及装置。所述方法包括:调用文件压缩解压缩支持中文的类;采用GBK编码方式编写所述压缩解压缩支持中文的类获取UTF8字节流或字符串的方法,将指定目录下的文件进行压缩或者解压缩文件到指定目录下。本发明的基于JAVA语言的中文压缩解压缩方法及装置,通过设定编码方式为GBK,可以实现文件名和目录为中文的压缩、解压缩操作。
技术领域
本发明涉及数据处理领域,尤其涉及一种基于JAVA语言的中文压缩解压缩方法及装置。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
现有的JAVA JDK提供的压缩与解压缩操作,只支持UTF-8编码,因此很多不支持中文目录或文件名的压缩解压缩。
发明内容
本发明的目的是提供一种基于JAVA语言的中文压缩解压缩方法及装置,以解决现有的JAVA JDK提供的压缩与解压缩操作,只支持UTF-8编码,很多不支持中文目录或文件名的压缩解压缩的问题。
为了达到上述目的,本发明实施例提供一种基于JAVA语言的中文压缩解压缩方法,包括:调用文件压缩解压缩支持中文的类;采用GBK编码方式编写所述压缩解压缩支持中文的类获取UTF8字节流或字符串的方法,将指定目录下的文件进行压缩或者解压缩文件到指定目录下。
在一实施例中,所述调用文件压缩解压缩支持中文的类,包括:在进行压缩操作时,调用CnZipOutputStream类;在进行解压缩操作时,调用CnZipInputStream类。
在一实施例中,采用GBK编码方式编写所述压缩解压缩支持中文的类获取UTF8字节流或字符串的方法,将指定目录下的文件进行压缩或者解压缩文件到指定目录下,包括:当进行压缩时,采用GBK编码方式编写所述CnZipOutputStream类获取UTF8字节流的方法,将指定目录下的文件进行压缩。
在一实施例中,采用GBK编码方式编写所述压缩解压缩支持中文的类获取UTF8字节流或字符串的方法,将指定目录下的文件进行压缩或者解压缩文件到指定目录下,包括:当进行解压缩时,采用GBK编码方式编写所述CnZipInputStream类获取UTF8字符串的方法,解压缩文件到指定目录下。
在一实施例中,当进行压缩时,采用GBK编码方式编写所述CnZipOutputStream类获取UTF8字节流的方法,将指定目录下的文件进行压缩,其具体包括:
指定要压缩的目录或文件;
指定压缩后的文件名称;
取得所述指定压缩目录下的包括子目录在内的所有文件列表;
指定压缩流的编码格式为GBK;
声明压缩流对象,在所述压缩流获取UTF8字节流时,按照GBK编码格式获取byte[]字节流;
遍历所述指定压缩目录下的包括子目录在内的所有文件列表,将每一个文件声明为ZipEntry压缩对象,读取文件的内容,写入所述压缩流对象,将所有的文件都写入所述压缩流对象,完成目录和文件的压缩。
在一实施例中,当进行解压缩时,采用GBK编码方式编写所述CnZipInputStream类获取UTF8字符串的方法,解压缩文件到指定目录下,包括:
指定要解压的文件,包含文件路径;
指定解压后的文件目录;
根据要解压的文件,实例化ZipFile对象;
定义压缩输入流;
定义输出流,用于输出每一个实体内容;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国银行股份有限公司,未经中国银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611025650.7/2.html,转载请声明来源钻瓜专利网。