私はUnicode日本語を書いたファイルを持っており、Shift-JISに変換してShift-JISでエンコードされたファイルに出力したいと思います。私はこれを行う:Python 3:私のunicode2shift-jisスクリプトは、ASCIIファイルの書き込みを除いて動作します。どうして?
with open("unikanji.txt", 'rb') as unikanjif:
unikanji = unikanjif.read()
sjskanji = unikanji.decode().encode('shift-jis')
with open("kanji.txt", 'wb') as sjskanjif:
sjskanjif.write(sjskanji)
私は、それはいつものANSIファイルとして開きますkanji.txt開くシフトJISではない、と私は代わりに、日本人のmiscの文字を見たときにそれはことを除いて動作します。ファイルのエンコーディングを手動でShift-JISに変更すると、その他の文字が正しい日本語文字に変換されます。私のプログラムでファイルをShift-JISとして作成するにはどうしたらいいですか?
あなたは[MCVE] [尋ねる]と読むことをお勧めします。 – boardrider
これは、出力ファイルを読み込むためのコードではなく、Shift-jisエンコードされたテキストをうまく書き出すコードではなく、どのように出力ファイルを開いているかに関係する問題です。どのテキストエディタを使用してもエンコーディングは正しく検出されませんが、ファイルやそれを作成するコードに問題はありません。 – Blckknght