解决Fedora解压文件产生乱码的问题

最近有发现在使用Linux的时候,之前也遇到过在ubuntu下,最后ubuntu貌似在原生下优化了这个问题,现在换到了fedora上的时候问题又出现了,解压出来的文件中文乱码。

为了在linux下可以打开word文档并且保证其格式不出问题,下在了wps,之后打开压缩包发现文件名中文字符乱码,压缩包是在windows下复制过来的。

接下来说一下解决方案,在fedora下没有提供响应的可以克服乱码的软件,但是可以自己写一个工具。

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 import os
 5 import sys
 6 import zipfile
 7 
 8 print "Processing File " + sys.argv[1]
 9 
10 file=zipfile.ZipFile(sys.argv[1],"r");
11 for name in file.namelist():
12     utf8name=name.decode('gbk')
13     print "Extracting " + utf8name
14     pathname = os.path.dirname(utf8name)
15     if not os.path.exists(pathname) and pathname!= "":
16         os.makedirs(pathname)
17     data = file.read(name)
18     if not os.path.exists(utf8name):
19         fo = open(utf8name, "w")
20         fo.write(data)
21         fo.close
22 file.close()

然后,我将这个文件名命名为charset.py,运行命令 charset.py *.zip就可以了。

 

posted @ 2016-05-13 08:37  小马甲奶糖  阅读(490)  评论(0编辑  收藏  举报