pythonを使用して中国語jsonを読み書きする


中国語の読み書き
中国語jsonを読み書きするにはpythonのjsonライブラリを使用してjsonを操作します.読み込みデータは、json.loadを使用することができる.
1
2
3
f
=
file
(
path
)
data
=
json
.
load
(
f
)
 
jsonはdictタイプのobjectオブジェクトにロードされます.json.dumpを使用してjsonを出力できます.しかし、出力されたテキストは中国語ではなく、utf-8のフォーマットに変換されます.ここで必要なものは次のとおりです.
1
2
output
=
json
.
dump
(
jsonData
,
targetFile
,
ensure_ascii
=
False
,
indent
=
4
)
 
中国語のjsonを出力します.ensure_を使用することでascii=Falseで、元の言語文字を出力します.indentパラメータはインデント数です.
書き込みファイルのフォーマットの変更
前回エクスポートしたstringを直接ファイルに書き込むとエラーが発生します(Python 2.7でのみ発生する可能性があります):
UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-9: ordinal not in range(128)

これは、ここで出力されるascii符号化の一部がサポートされていないため、エラーが発生します.
解決策は、出力時にファイルに特定のUTF-8符号化を設定することです.
1
2
3
4
5
import
codecs
 
with
codecs
.
open
(
path
,
'w'
,
'utf-8'
)
as
w
:
    
#write to w
 
この方法でファイルに正常に出力できます.
本ブログは阿修羅道から出たもので、転載は出典を明記し、商業用途に使用することを禁止してください.http://blog.csdn.net/fansongy/article/details/40051413