Ich habe eine Datei mit Unicode Japanisch schreiben und ich möchte es in Shift-JIS konvertieren und es in Shift-JIS-codierte Datei ausdrucken. Ich tue dies:Python 3: mein Unicode2shift-jis-Skript funktioniert außer schreibt ASCII-Datei. Warum?
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)
Es funktioniert, außer dass, wenn ich öffnen kanji.txt es öffnet sich immer als Ansi-Datei, ohne Shift-JIS, und ich sehe misc Zeichen anstelle von Japanisch. Wenn ich die Dateikodierung manuell in Shift-JIS ändere, werden die verschiedenen Zeichen in die richtigen japanischen Zeichen umgewandelt. Wie mache ich mein Programm die Datei als Shift-JIS zu erstellen?
Vielleicht möchten Sie [fragen] und [MCVE] lesen. – boardrider
Dies ist ein Problem damit, wie Sie die Ausgabedatei öffnen, um sie zu lesen, nicht mit Ihrem Code, der Shift-jis-kodierten Text gut ausgibt. Der von Ihnen verwendete Texteditor erkennt die Codierung nicht richtig, aber das ist kein Problem mit der Datei oder dem Code, mit dem sie erstellt wird. – Blckknght