[解決済み] UnicodeDecodeError: 'charmap' コーデックは位置 XXX のバイト 0x8f をデコードできません: char
2022-02-19 23:01:13
質問
Pythonスクリプトから1つのログファイルを読み込もうとしています。私のプログラムはLinuxでは正常に動作しますが、Windowsではエラーが発生します。特定の行番号でいくつかの行を読んだ後、次のエラーが発生します。
File "C:\Python\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 311: char
acter maps to <undefined>
以下は、ファイルを読み込むために使用しているコードです。
with open(log_file, 'r') as log_file_fh:
for line in log_file_fh:
print(line)
私はascii、utf8、utf-8、ISO-8859-1、cp1252、cp850として異なるエンコーディングモードを使用して、それを修正しようとしました。 しかし、まだ同じ問題に直面しています。 この問題を解決する方法はありますか?
解決方法は?
Pythonスクリプトで読み込みたいログファイルは、欧米言語でエンコードされています。 以下のリンクを参照してください。 https://docs.python.org/2.4/lib/standard-encodings.html 私はエンコードモードとして'cp850'を使用し、これは私のために動作しました。
with open(log_file, 'r',encoding='cp850') as log_file_fh:
for line in log_file_fh:
print(line)
しかし、西ヨーロッパでは、多くのコーデックがそのサイトで利用可能です。 私は、これは正しい解決策ではないと思います。 ほとんどの開発者は、'cp850'モードを使用しないように提案しています。
エンコードエラーを処理する最良の方法は、ファイルを開くときにerrors引数を追加し、プロパティとして「無視」を与えることです。
with open(log_file, 'r',errors='ignore') as log_file_fh:
for line in log_file_fh:
print(line)
関連
-
Pythonコンテナのための組み込み汎用関数操作
-
Pythonによるjieba分割ライブラリ
-
python implement mysql add delete check change サンプルコード
-
PythonによるExcelファイルの一括操作の説明
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】cアンダースコア式`c_`は、具体的に何をするのですか?
-
[解決済み] UnicodeDecodeError: 'charmap' コーデックは、位置YのバイトXをデコードできません:文字は<undefined>にマップされます。
-
[解決済み] UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 20: ordinal not in range(128)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python関数の高度な応用を解説
-
PicgoのイメージベッドツールをPythonで実装する
-
python implement mysql add delete check change サンプルコード
-
PyQt5はユーザーログインGUIインターフェースとログイン後のジャンプを実装しています。
-
パッケージングツールPyinstallerの使用と落とし穴の回避
-
[解決済み】ilocが「IndexError: single positional indexer is out-of-bounds」を出す。
-
[解決済み】ImportError: PILという名前のモジュールがない
-
[解決済み】Python elifの構文が無効です【終了しました
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み] UnicodeDecodeError: 'charmap' コーデックは、位置YのバイトXをデコードできません:文字は<undefined>にマップされます。