【JAVA】net.lingala.zip4j获取压缩包内文件内容里中文乱码

总的来讲:BufferedReader fr = new BufferedReader(new InputStreamReader(inputStream,StandardCharsets.UTF_8));

网上说的几种情况:
1、zipFile.setCharset(Charset.forName("gbk"))

  这个不好用,有可能需要正了八经解压之后。直接从压缩里取,可能在IO层面是什么压缩包的算法,不知道,我猜的

2、new String(str..getBytes("UTF-8"))

  这个只能说好用一点点。用了这个之后发现三个字的名字只显示前两个字,后面都是问号,就奇葩。

咱就是说,从根本上来讲,在获取流的时候,可以写个UTF_8这种规则,那挺好。

posted @ 2023-09-07 18:44  乡屯米卒  阅读(528)  评论(0编辑  收藏  举报