ASCIIのファイル名に全角数字とスペースを変換します
-
22-09-2019 - |
質問
(一部の半角数字とアンダースコアと一緒に)ダブルバイト/全角数字とスペースからなるファイル名のディレクトリを考えると、どのように私は、シングルバイト文字に数字とスペースのすべてを変換することができますか?
例えば、このファイル名は、いくつかのシングルバイト文字に続く2バイトの空白が続くダブルバイト数、で構成されています:
2 2_3.ext
と、私はそうのように、すべてのシングルバイトに変更したいと思います:
2 2_3.ext
私はUTF8からASCIIに変換するために、 convmv してみましたが、次のようましたメッセージは、すべてのファイルを表示されます:
"ASCIIは、すべての必要な文字をカバーしていない。のファイル名の"
解決 3
他のヒント
あなたはどちらか必要(1)は、Java 1.6(java.text.Normalizer
)からの正規化、または(2) ICU 、または(3)(そう)製品ます。
どのようなツールは、あなたが利用できる持っていますか? Unicodeの正規化機能は、Pythonで、たとえば、いくつかのスクリプト言語であります:
for child in os.listdir(u'.'):
normal= unicodedata.normalize('NFKC', child)
if normal!=child:
os.rename(child, normal)
所属していません StackOverflow