请大神帮忙解决一个用java解压缩一个zip压缩格式字节流中文内容乱码问题!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请大神帮忙解决一个用java解压缩一个zip压缩格式字节流中文内容乱码问题!相关的知识,希望对你有一定的参考价值。

问题是这样的:我有一个现成的服务器程序,通过android程序来访问那个服务器,协议是TCP,服务器端发来的是按GB2312这个字符集的字节流,且在服务器端用zip格式压缩,现在的问题是:如果服务器端发来的没有中文内容,android这边解压缩很正常,如果服务器端发来的内容含有中文,这边除了非中文外,所有中文都是乱码,且我找了很多资料,也都没有解决,使用的关键代码是:

ByteArrayInputStream in = new ByteArrayInputStream(newbytes);//将字节数组转成输入流
ZipInputStream zipis=new ZipInputStream(in);

zipis.getNextEntry();//将输入流定位在当前entry数据项位置

DataInputStream dis=new DataInputStream(zipis);

//用ZIP输入流构建DataInputStream
str=dis.readLine();//

dis.close();//关闭文件

outSteam.close();

return str;

我想肯定是字符集的问题,但找了很多资料,都没有解决掉,请哪位大神,帮忙解决一下
注:我按网上有人说的修改zipinputstream.java这个类,自行添加一个字符集参数,没有成功,原因可能是,我现在用的java1.7上的zipinputstream里没有他们说的几个关键方法,且我看这个类里有一个可以带字符集参数的方法,但在我的开发环境里,怎么也找到不这个带参数的方法,不知是怎么回事儿

参考技术A 这个问题我有点印象,好像是包的问题。好像不能用zip的那个,换另一个包就好了。具体我也不记得了 参考技术B 服务器端一般不是采用的是gzip吗。

以上是关于请大神帮忙解决一个用java解压缩一个zip压缩格式字节流中文内容乱码问题!的主要内容,如果未能解决你的问题,请参考以下文章

JAVA压缩 解压缩zip 并解决linux下中文乱码

有没人知道用jAVA解压缩ZIP包得时候报这个错是啥意思啊???java 高手进

java压缩中文zip,系统winrar解压改中文zip会出现乱码

java实现 zip解压缩

java生成zip压缩文件,解压缩文件

java 解压缩后放到 一个list里。