導航:首頁 > 文件處理 > java壓縮中文亂碼

java壓縮中文亂碼

發布時間:2022-09-24 18:41:33

① 如何解決java程序解壓含有中文名的zip壓縮包出現亂碼

上次利用java自動的java.util.zip.ZipEntry和�0�2java.util.zip.ZipFile來解壓zip文件,今天發現程序在讀取解壓文件時居然報了空指針異常,debug程序後發現時讀取不到文件,產生原先是zip壓縮文件中含有中文的名稱,讀取文件名為亂碼,
報找不到文件名,所以報了空指針,想到ant構建文件也有這個功能,換了apache的ant.jar居然解決了中文的問題。
備份下。
�0�2import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Enumeration;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;/*** 讀取zip壓縮文件中文本的內容
* @author fish*/public class ReadZip {
public static void main(String args[]) {try {String fileName = "D:/workspace/java/src/ReadZip.zip";
//構造ZipFile
ZipFile zf = new ZipFile(new File(fileName));
//返回 ZIP file entries的枚舉.
Enumeration<? extends ZipEntry entries = zf.getEntries();
while (entries.hasMoreElements()) {
ZipEntry ze = entries.nextElement();
System.out.println("name:"+ze.getName());
long size = ze.getSize();
if (size 0) {
System.out.println("Length is " + size);
BufferedReader br = new BufferedReader(
new InputStreamReader(zf.getInputStream(ze)));
String line;
while ((line = br.readLine()) != null) {

② java用apache的ZipEntry壓縮文件名為中文的word文件時,文件名亂碼

對於輸出zip文件的ZipOutputStream對象設置一下編碼:

ZipOutputStreamout=newZipOutputStream(newFileOutputStream(
zipFileName));
//設置filenames的編碼
out.setEncoding("UTF-8");

通常linux下使用utf8進行文件命名編碼,而windows下採用gbk,根據你的系統情況而定

可參考下api:

http://www.jajakarta.org/ant/ant-1.6.1/docs/ja/manual/api/org/apache/tools/zip/ZipOutputStream.html

③ 請問用java編寫一個壓縮程序,怎樣解決壓縮文件zip里的文件名亂碼問題!

沒做過壓縮程序,JAVA裡面的字元串使用的編碼為unicode,ZIP文件裡面用的應該是本地編碼(中文操作系統用的是GB2312)。

你可以嘗試著用類似這樣的語句:String str = ( otherStr.getBytes("GB2312") );

祝好運。

④ java tar壓縮 中文亂碼怎麼解決

我一般都是用writeUTF()方法往文件里寫東西 File file = new File("......."); FileOutputStream fos = new FileOutputStream(file); DataOutputStream dos = new DataOutputStream(fos); dos.writeUTF("blablabla");

⑤ 請大神幫忙解決一個用java解壓縮一個zip壓縮格式位元組流中文內容亂碼問題!

伺服器端一般不是採用的是gzip嗎。

⑥ 如何解決java程序解壓含有中文名的zip壓縮包出現亂碼

上次利用java自動的java.util.zip.ZipEntry和�0�2java.util.zip.ZipFile來解壓zip文件,今天發現程序在讀取解壓文件時居然報了空指針異常,debug程序後發現時讀取不到文件,產生原先是zip壓縮文件中含有中文的名稱,讀取文件名為亂碼,
報找不到文件名,所以報了空指針,想到ant構建文件也有這個功能,換了apache的ant.jar居然解決了中文的問題。
備份下。
�0�2import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Enumeration;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;/*** 讀取zip壓縮文件中文本的內容
* @author fish*/public class ReadZip {
public static void main(String args[]) {try {String fileName = "D:/workspace/java/src/ReadZip.zip";
//構造ZipFile
ZipFile zf = new ZipFile(new File(fileName));
//返回 ZIP file entries的枚舉.
Enumeration<? extends ZipEntry entries = zf.getEntries();
while (entries.hasMoreElements()) {
ZipEntry ze = entries.nextElement();
System.out.println("name:"+ze.getName());
long size = ze.getSize();
if (size 0) {
System.out.println("Length is " + size);
BufferedReader br = new BufferedReader(
new InputStreamReader(zf.getInputStream(ze)));
String line;
while ((line = br.readLine()) != null) {

⑦ java 中文亂碼問題。崩潰了快。

你好,幫你看了一晚上,一直以為是程序轉碼的問題,看了半天的API和源碼,均沒有找到可以設置字元編碼的地方。上網一查,原來是jdk的問題,網上是這樣解釋的:
上網查了下,有兩種方法,一種修改jdk ZipInputStream及ZipOutputStream 的源文件,比較麻煩,不建議此項.第二種 就是拿來主義,因為 開源項目 Ant 里已經有現成的實現.把ant.jar 加入到 工程下的lib目錄即可.
在調試的過程中,發現了一些問題,幫你改正了下,你的程序打包後,裡面的層次關系錯亂了。只需要將其中的一句改為:
fileIn = new FileInputStream(fileName);
String entryName = fileName.getPath(); //這句,將fileName.getName()修改為getPath
// 生成的壓縮包存放在原目錄下
zipEntry = new ZipEntry(entryName) ;
這樣就正常了。

⑧ java壓縮中文zip,系統winrar解壓改中文zip會出現亂碼

建議 使用 apache ant 工具包來做壓縮,能完美的解決中文亂碼問題

⑨ 用java壓縮文件,中文文件名成了亂碼。 問題應該是出在流里了。 要怎麼解決呢

我一般都是用writeUTF()方法往文件里寫東西
File file = new File(".......");

FileOutputStream fos = new FileOutputStream(file);

DataOutputStream dos = new DataOutputStream(fos);

dos.writeUTF("blablabla");

⑩ Java zip 解壓文件中文 亂碼問題.. 跪求大神解答

字元格式需要進行轉碼了

閱讀全文

與java壓縮中文亂碼相關的資料

熱點內容
世界各地加密貨幣稅法 瀏覽:285
只能解壓不能覆蓋 瀏覽:306
暗黑2戰網可以使用命令嗎 瀏覽:348
樹莓派雲伺服器配置 瀏覽:343
sql命令查詢 瀏覽:555
風控編程怎麼樣 瀏覽:102
程序員面試可以穿短褲嗎男 瀏覽:866
上海博巨壓縮機 瀏覽:298
win7取消定時關機命令 瀏覽:173
程序員後期需要轉行嗎 瀏覽:117
2017年程序員前景 瀏覽:408
ug曲線分割命令 瀏覽:792
我的世界伺服器有人放惡心指令怎麼找到 瀏覽:995
matlab模板匹配演算法 瀏覽:102
華為怎樣使用雲伺服器地址 瀏覽:109
空調壓縮機分解圖片 瀏覽:783
qq飛車音樂所在文件夾 瀏覽:249
為什麼go編譯那麼快 瀏覽:318
雲耀雲伺服器中文 瀏覽:511
p2p借貸服務行業白皮書pdf 瀏覽:887