導航:首頁 > 編程語言 > javazip中文亂碼

javazip中文亂碼

發布時間:2023-01-15 10:45:16

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

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

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

祝好運。

❷ 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 linux 從伺服器上創建一個zip包 向zip包里寫文件 下載zip包中文亂碼

用的是什麼zip庫,有沒有設置編碼格式。
例如,zip4j的話,zf.setFileNameCharset("UTF-8");

❹ 通過java控制linux環境下解壓文件夾後中文文件名是亂碼

壓縮成rar格式的再試試

❺ java中jar打包後中文文件全部亂碼,如何解決

1、用代碼混淆器,混淆後一般都是一些西文字元,這些字元在GBK和UTF8中映射鍵應該是一樣的。但是上網搜索老半天就是找不到好用的針對源代碼的工具。
2、轉化源代碼編碼。這個我試過了,但是文件名在打包後仍變成亂碼。不知道如何改變文件名的編碼格式。
3、自己做一個轉化程序,把源代碼中的中文名轉化為任意的西文。但是自己的正則表達式基礎太差,寫不好這種程序,特別是區分哪個是String里的內容還是標識符。。
可以了

❻ 如何解決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下載,中文名稱出現亂碼問題

我不太清楚怎麼回事,但是網路上的很多資源都支持英文,對中文的支持有問題,很可能是網頁中的編碼是GB2312*(大多的jsp和asp),也許你的電腦是UTF-8或則別的,這中問題和配置有很大的關系,建議不要使用中文

❽ 用好壓軟體壓縮文件為zip格式,在用JAVA的zip4j包進行解壓,但是解壓後出現亂碼,怎麼事

按照你說的我沒有亂碼,把壓縮文件貼出來瞧瞧。

❾ 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文件中文亂碼問題

我以前也遇到過這個問題,最後發現java自帶的zip壓縮沒辦法解決中文名亂碼的問題
你可以使用apache ant的zip類(package: org.apache.tools.zip)來解決這個問題。

閱讀全文

與javazip中文亂碼相關的資料

熱點內容
蘋果如何創建伺服器錯誤 瀏覽:495
軟考初級程序員大題分值 瀏覽:473
js壓縮視頻文件 瀏覽:578
linux如何通過命令創建文件 瀏覽:989
應用加密app還能訪問應用嘛 瀏覽:433
安卓怎麼用支付寶交違章罰款 瀏覽:665
php面向對象的程序設計 瀏覽:504
數據挖掘演算法書籍推薦 瀏覽:894
投訴聯通用什麼app 瀏覽:150
web伺服器變更ip地址 瀏覽:954
java正則表達式驗證郵箱 瀏覽:360
成熟商務男裝下載什麼軟體app 瀏覽:609
加密2h代表長度是多少厘米 瀏覽:23
拍賣程序員 瀏覽:101
電腦的圖片放在哪個文件夾 瀏覽:276
unsignedintjava 瀏覽:217
編譯器下載地址 瀏覽:43
什麼是面對對象編程 瀏覽:708
b站伺服器什麼時候恢復 瀏覽:721
6p相當於安卓機什麼水準 瀏覽:499