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 回答