はじめに
Windows ではファイルを圧縮しても問題ない場合が多いですが、Linux では文字化けが発生することがよくあります。以前は、Ubuntu では `unzip -O GBK filename.zip`
を使用することができました。 Fedora に切り替えた後、まだ文字化けした圧縮ファイルは見つかりませんでした。夜に本のCDをダウンロードしたら、また文字化けに遭遇しました。前の方法を試しましたが成功しませんでした。 unzip のヘルプを見たところ、-O パラメーターがないことがわかりました == Python を使用した解決策を見つけたので、共有してください。
拡張子 `.py` が付いた新しいファイルを作成し、コードを直接コピーして貼り付けます:
#!/usr/bin/env python # -*- coding: utf-8 -*- import os import sys import zipfile print "Processing File " + sys.argv[1] file=zipfile.ZipFile(sys.argv[1],"r"); for name in file.namelist(): utf8name=name.decode('gbk') print "Extracting " + utf8name pathname = os.path.dirname(utf8name) if not os.path.exists(pathname) and pathname!= "": os.makedirs(pathname) data = file.read(name) if not os.path.exists(utf8name): fo = open(utf8name, "w") fo.write(data) fo.close file.close()
解凍した zip ファイルを実行すると、素敵な漢字が表示されます。
python 文件名.py 需要解压的文件名.zip
まとめ
さて、この問題はとても簡単に解決しました、皆さんは覚えましたか?この記事が皆さんの勉強や仕事に少しでも役立つことを願っています。ご質問がある場合は、メッセージを残して連絡してください。
Fedora で zip を解凍する際の中国語の文字化けを解決するための Python のその他の方法については、PHP 中国語 Web サイトに注目してください。