现有一个用GZIPOutputStream()压缩过的字符串,用下面方法解压,可是数组中没有数据,请问那里出错了?
public static byte[] gzip(String s)
{
byte[] z = new byte[1024];
ByteArrayInputStream buff = new ByteArrayInputStream(s.getBytes());
try
{
GZIPInputStream in = new GZIPInputStream(buff); //gzip
in.read(z,0,z.length);
in.close(); }
catch(IOException e)
{}
return z;
}
public static byte[] gzip(String s)
{
byte[] z = new byte[1024];
ByteArrayInputStream buff = new ByteArrayInputStream(s.getBytes());
try
{
GZIPInputStream in = new GZIPInputStream(buff); //gzip
in.read(z,0,z.length);
in.close(); }
catch(IOException e)
{}
return z;
}
等着在下面的catch里捕获异常吧。
你可以把一个字符串->得到byte数组->压缩->得到压缩后的byte数组->解压缩->生成字符串,这样的过程来测试GZIPInputStream/GZIPOutputStream类。