11

ファイル システムからファイル名を読み取っていて、JSON エンコードされた配列として送信したいと考えています。問題は、ファイル システム上のファイルが無効なエンコーディングで格納される可能性があることです。この状況を処理して、無効なファイル名を に渡す前に除外する必要がありますjson.dump。そうしないと失敗します。

文字列 (ファイル名) に有効な utf-8 文字が含まれていることを確認する方法はありますか?

4

1 に答える 1

18

以下を試してみてはいかがでしょうか。

valid_utf8 = True
try:
    filename.decode('utf-8')
except UnicodeDecodeError:
    valid_utf8 = False

... 同様の質問への回答に基づいて: How to write a check in python to see if file is valid UTF-8?

于 2011-03-10T11:41:33.827 に答える