精华内容
下载资源
问答
  • CompresszZipFile 中带是 zip解压 ZipFileUtil 是文件压缩 和rar的解压
  • 解压文名字乱码是因为在解压缩的时候,默认了一种解码,那就是cp437,因此要解决这个问题,首先要将解码出来的再次加密回去,在用gbk解码出来。 因为已经解压缩出来了,不能再通过解压缩来完成上述步骤(除非修改源码)...

    方式1

    解压文名字乱码是因为在解压缩的时候,默认了一种解码,那就是cp437,因此要解决这个问题,首先要将解码出来的再次加密回去,在用gbk解码出来。
    因为已经解压缩出来了,不能再通过解压缩来完成上述步骤(除非修改源码),这里采用遍历文件夹方式将文件名字改为正常中文

    #传进入完整的文件夹名称,将名字格式进行更替
    def namessolve(folderpath):
        for dirpath, dirnames, filenames in os.walk(folderpath):  #进入需要改正名字的文件夹
            for filename in filenames:
                try:
                    newfilename = filename.encode('cp437').decode('gbk')  #尝试对文件名字进行编码解码
                    filefullpath = os.path.join(dirpath,filename)         #如果成功,则将文件原始路径算出
                    newfilefullpath = os.path.join(dirpath,newfilename) 
                    os.rename(filefullpath,newfilefullpath)    #将名字进行替换
                except:
                    print('文件更名失败!')
            for dirname in dirnames:
                try:
                    newdirname = dirname.encode('cp437').decode('gbk')  
                    dirfullpath = os.path.join(dirpath,dirname)       
                    newdirfullpath = os.path.join(dirpath,newdirname) 
                    os.rename(dirfullpath,newdirfullpath)    #将名字进行替换
                except:
                    print('文件夹更名失败!')
    

    此遍历方式有问题,不能完整遍历完,最好使用文件夹递归调用方式

    方式2

    找到Python安装文件夹 进入lib 找到zipfile.py源码
    将此文件中的cp437 替换为gbk

    解压的时候文字编码很重要,如果编码不对,会导致文件找不到等错误!

    展开全文
  • 压缩文件乱码解决

    千次阅读 2019-08-16 14:49:13
    1.百度上面那些修改系统地区的那些方式,麻烦 2.使用360压缩打开(先不要解压),然后选择压缩包语言选项将其修改为中文即可 3.如果还是搞不定上传到百度网盘用云解压的功能 ...

    1.百度上面那些修改系统地区的那些方式,麻烦

    2.使用360压缩打开(先不要解压),然后选择压缩包语言选项将其修改为中文即可

    3.如果还是搞不定上传到百度网盘用云解压的功能

    展开全文
  • throw new Exception("待压缩文件不存在"); } FileInputStream fis = new FileInputStream(temp); BufferedInputStream readBuf = new BufferedInputStream(fis); // 在压缩包中的路径 ZipEntry z1 ...
    import java.io.BufferedInputStream;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.util.ArrayList;
    import java.util.List;

    import org.apache.tools.zip.ZipEntry;
    import org.apache.tools.zip.ZipOutputStream;

    public class ZipUtils {
    // 压缩
    public static Integer compress(List<String> srcFiles, String zipFile) throws Exception {
    File zfile = new File(zipFile);
    if(!zfile.exists()){
    zfile.createNewFile();
    }
    int len = 0;
    byte[] b = new byte[1024];
    ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFile));
    zos.setEncoding("GBK");
    // 被压缩的文件
    for(String temp:srcFiles){
    File file = new File(temp);
    if(!file.exists()){
    zos.close();
    throw new Exception("待压缩文件不存在");
    }

    FileInputStream fis = new FileInputStream(temp);
    BufferedInputStream readBuf = new BufferedInputStream(fis);
    // 在压缩包中的路径
    ZipEntry z1 = new ZipEntry(file.getName());
    zos.putNextEntry(z1);
    while ((len = readBuf.read(b,0,1024)) != -1) {
    zos.write(b, 0, len);
    zos.flush();
    }
    fis.close();
    }
    zos.close();
    return 1;
    }
    public static void main(String[] args) throws Exception {
    //压缩
    List aa = new ArrayList();
    aa.add("E:/还是打开/ATTACHMENT_FILE.sql");
    aa.add("E:/还是打开/BLACK_NAME_LIST.sql");
    compress(aa,"E:/还是打开/zz压缩文件.zip");
    }
    展开全文
  • 由于zip格式并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,因此,导致这些zip文件在Linux下解压时出现乱码问题,因为Linux下的默认编码是UTF8。 解决方案一 使用7z解压。 安装p7zip和convmv ...
  • 在windows上压缩的文件,是以系统默认编码中文来压缩文件。由于zip文件中没有声明其编码,所以linux上的unzip一般以默认编码解压,中文文件名会出现乱码。 虽然2005年就有人把这报告为bug, 但是info-zip的官方网站...

    在windows上压缩的文件,是以系统默认编码中文来压缩文件。由于zip文件中没有声明其编码,所以linux上的unzip一般以默认编码解压,中文文件名会出现乱码。
    虽然2005年就有人把这报告为bug, 但是info-zip的官方网站没有把自动识别编码列入计划,可能他们不认为这是个问题。Sun对java中存在N年的zip编码问题,采用了同样的处理方式。

    有2种方式解决问题:

    1. 通过unzip行命令解压,指定字符集

      unzip -O CP936 xxx.zip (用GBK, GB18030也可以)

      有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说明。

    2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件

      /etc/environment中加入2行

      UNZIP="-O CP936"

      ZIPINFO="-O CP936"

    这样Gnome桌面的归档文件管理器(file-roller)可以正常使用unzip解压中文,但是file-roller本身并不能设置编码传递给unzip。

    转载地址:http://forum.ubuntu.org.cn/viewtopic.php?f=122&t=175405&p=1343326

    转载于:https://www.cnblogs.com/zxhyJack/p/9818509.html

    展开全文
  • ICSharpCode.SharpZipLib压缩解决中文乱码dll和代码
  • 目前主流的压缩文件操作类,除了C#原生的。还有 1. ZIP-DotNetZip 网址:http://dotnetzip.codeplex.com/ 27Zip-SevenZipSharp 网址:http://sevenzipsharp.codeplex.com/ 支持的格式比上面多,如:7Zip,RAR,...
  • 好压压缩文件目录乱码的解决

    千次阅读 2019-05-14 16:15:26
    好压压缩文件目录乱码的解决 1.打开好压软件 2.点击右上角主菜单 3.选择 代码页>更多代码页与设置 4.选择支持代码页为UTF-8,下面两个打上勾。 5.再次打开你的压缩文件,发现目录乱码问题已解决 本人用的是...
  • 系统版本ubuntu 14.04 1. 安装unar sudo apt-get install unar 2.使用unar解压文件 unar *.zip
  • 使用压缩应用:好压 解决方式:打开压缩文件--选项--language--设置代码页--勾选UTF8--进行解压--恢复正常
  • 好了,让我们进入本次文章的主题,文件压缩和解压在项目中还是比较常见的,比如常用的导出和导入功能,有时候就需要导出或导入为zip格式,对于压缩这类的需求我一直是使用zip4j来处理,简单实用,java中虽然有自带...
  • 发附件含有压缩文件的邮件,出现压缩文件名乱码。按照网上做的设定邮件主题的编码,设置压缩文件的编码,最后还是不行。 由于我的项目是接手别人的,因而这编码不一致,一个是gbk,一个utf-8.在将两者统一为gbk后...
  • java压缩zip文件中文乱码问题

    千次阅读 2015-01-04 15:48:09
    用java来打包文件生成压缩文件,有两个地方会出现乱码 1、内容的中文乱码问题,这个问题网上很多人给出了解决方法,两种:修改sun的源码;使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools....
  • Java ZIP压缩和解压缩文件(解决中文文件名乱码问题) 时间 2014-03-05 19:02:52 ITeye-博客 原文 http://jackyin5918.iteye.com/blog/2026286 主题 Java JDK中自带的ZipOutputStream在压缩文件时,...
  • 其实有很多人在Deepin系统中解压zip文件都遇到了文字乱码的情况,主要是zip文件内包含有中文名的文件,如果都是英文名则不会有乱码,而解压缩后内部中文名的文件名就显示乱码,同时用归档管理器打开也是乱码,这个...
  • java.util.zip.ZipFile来解压zip文件,今天发现程序在读取解压文件时居然报了空指针异常,debug程序后发现时读取不到文件,产生原先是zip压缩文件中含有中文的名称,读取文件名为乱码,报找不到文件名,所以报了空...
  • 疑难杂症 | Win10解压文件乱码 背景:本人电脑在英国购买,初始系统全部英文,在语言设置改成中文后,解压下载的文件一直都是乱码。更换解压软件后还是乱码- - 语言时间时区设置 快捷键【Win+i】调出Windows设置 ...
  • 在读取文件时,遇到文件中的字符超出编码格式本身,如:文件中含有一个超出utf8范围内的字符,而其他文件都可以正常以utf8编解码 提供两种解决方案: 1、保留超出编码格式的部分字符 利用chardet模块(第三方库,需...
  • 关于 MAC 下解压文件乱码的问题

    千次阅读 2017-07-27 10:34:23
    问题来源使用 mac 的用户应该都碰见过这样的情况 : 好不容易找到压缩文件, 下载下来之后却发现解压出来的文件是乱码. 虽然一般来说, 文件里面的内容不会受到影, 但是认不出来文件的名字确实会带来很多困扰解决方案...
  • * com.example.ast.androidzipfile * email gerryin@163.com */ public class ZipFileUtil { /** * 解压缩 * 将zipFile文件解压到folderPath目录下. * * @param zipFile zip文件 * @param folderPath 解压到的地址 ...
  • hutool工具包导出excel文件filename乱码与中文列宽自适应问题 *话不多说,直接代码~~~~* 修改之前: /** * 导出excel */ public static void downloadExcel(List<Map<String, Object>> list, ...
  • 原Windows rar压缩文件,Linux系统下解压后打开里边的文件,内容全部乱码。   之所以出现乱码是因为所压缩文件中,有的文件是以中文命名。而在windows下中文的编码一般为gbk,而linux下中文的编码一般为utf...
  • tar 中文乱码

    千次阅读 2021-05-09 09:29:35
    tar -zxvf 文件后放到window下,中文文件名乱码的问题:tar把类似 “物理游戏.png” 包含中文名的文件打包压缩之后,放到windows下用 7z/RAR解压出来文件名乱码了而不打包压缩 直接传到windows下,文件名是不会乱码...
  • 在windows上使用ftp上传文件到Linux上,中文名称在Linux系统中显示为乱码。虽然将Linux的env设置了LANG=en_US.UTF-8,并且本地的Shell客户端编码也设置成UTF-8,但在Shell中(或通过http访问),仍是乱码…… 原因...
  • 可能使用Mac系统的朋友,在压缩文件时遇到过这样的问题: 要给朋友传文件,而对方又是WIN系统。我们打好包传过去以后,对方解压缩发现中文文件名都成乱码了。这是怎么回事? 原来,Mac下,默认文字编码是utf-8...
  • 对于Java自身自带的压缩文件操作来说,最大的弊端应该就是对中文的不支持,所以很多人都会去选择apache公司提供的。然而apache公司提供的同样也有语言问题。但Java自身的就不会。 在我去网上找过相关的资料,发现...
  • 汉字乱码问题

    2019-10-18 13:37:33
    首先讲一下,我遇到的问题,作者是在抓包工具上抓到一个链接,然后复制出headers,然后模拟浏览器进行请求,刚开始还好好的很正常,并没有什么不对的地方,但是不知道什么原因突然请求回来的内容中汉字出现了乱码...
  • 我最近发现很奇怪的问题,为什么我的Linux 明明可以显示中文,也可以保存中文文本文件,但是打开移动硬盘中保存的文本文件还是乱码。最后搜索了半天才找到了答案。编码不同,点击(此处)折叠或打开vim 打开文件:set ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,474
精华内容 3,789
关键字:

压缩文件文字乱码