[Java 常用类库]:StringCompress(字符串压缩)

来源:互联网 发布:淘宝小号 担保交易 编辑:程序博客网 时间:2024/05/16 23:38

[Java 常用类库]

StringCompress(字符串压缩)


方法说明:

1.compress(String):对字符串进行ZIP压缩饼返回字节数组

2.decompress(byte[]):将压缩的字节数组还原成字符串


用途:

保存到数据库BOLB中。


import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.zip.ZipEntry;import java.util.zip.ZipInputStream;import java.util.zip.ZipOutputStream;public class StringCompress {public static final byte[] compress(String paramString) {if (paramString == null)return null;ByteArrayOutputStream byteArrayOutputStream = null;ZipOutputStream zipOutputStream = null;byte[] arrayOfByte;try {byteArrayOutputStream = new ByteArrayOutputStream();zipOutputStream = new ZipOutputStream(byteArrayOutputStream);zipOutputStream.putNextEntry(new ZipEntry("0"));zipOutputStream.write(paramString.getBytes());zipOutputStream.closeEntry();arrayOfByte = byteArrayOutputStream.toByteArray();} catch (IOException localIOException5) {arrayOfByte = null;} finally {if (zipOutputStream != null)try {zipOutputStream.close();} catch (IOException localIOException6) {}if (byteArrayOutputStream != null)try {byteArrayOutputStream.close();} catch (IOException localIOException7) {}}return arrayOfByte;}@SuppressWarnings("unused")public static final String decompress(byte[] paramArrayOfByte) {if (paramArrayOfByte == null)return null;ByteArrayOutputStream byteArrayOutputStream = null;ByteArrayInputStream byteArrayInputStream = null;ZipInputStream zipInputStream = null;String str;try {byteArrayOutputStream = new ByteArrayOutputStream();byteArrayInputStream = new ByteArrayInputStream(paramArrayOfByte);zipInputStream = new ZipInputStream(byteArrayInputStream);ZipEntry localZipEntry = zipInputStream.getNextEntry();byte[] arrayOfByte = new byte[1024];int i = -1;while ((i = zipInputStream.read(arrayOfByte)) != -1)byteArrayOutputStream.write(arrayOfByte, 0, i);str = byteArrayOutputStream.toString();} catch (IOException localIOException7) {str = null;} finally {if (zipInputStream != null)try {zipInputStream.close();} catch (IOException localIOException8) {}if (byteArrayInputStream != null)try {byteArrayInputStream.close();} catch (IOException localIOException9) {}if (byteArrayOutputStream != null)try {byteArrayOutputStream.close();} catch (IOException localIOException10) {}}return str;}}




原创粉丝点击