0

Windows システム、Vista、および Windows 7 で NTFS ファイル システムを使用してフォルダーを作成したいと考えています。フォルダーには、「förjävligt」などの文字 å、ä および/または ö が含まれる場合があります。

Python ファイルとその中のすべての文字列は現在 UTF-8 ですが、Windows ファイル システムに合わせて変換するにはどうすればよいですか?

4

2 に答える 2

3

通常のPython2文字列を使用している場合は、それらをUnicodeに変換するだけです。

# -*- coding: utf-8 -*-
normalString = "äöü"

# Now convert to unicode. Specified encoding must match the file encoding
# in this example. In general, you must specify how the bytes-only string
# contained in "normalString" is encoded.
unicodeString = unicode(normalString, "utf-8")

with open(unicodeString, "w") as f:
    ...

そして、それらのUnicode文字列を使用してファイルを作成します。Python(および間接的にWindows API)が残りを処理します。

于 2010-02-24T15:48:22.950 に答える
1

文字列を Windows での作業に適したものにしたい場合は、このsafeFilenameCodecを使用できます。これは許容される文字のサブセットですが、クレイジーなことを心配する必要はありません。そして、それは寛大なライセンスを持っています。

于 2010-02-24T17:39:50.633 に答える