\

PythonでUTF-8のBOMを扱う方法について説明します。UTF-8にはBOM (Byte order mark)が付く場合があります。これはエンコードがUTF-8であるという識別子です。

UTF-8 BOMの読み込み

PythonでUTF-8 BOM有りを読み込む場合はエンコードを ‘utf_8_sig’ と指定します。

import io

filename = "your_file.txt"
with io.open(filename, "r", encoding="utf_8_sig") as f:
    content = f.read()

このコードは、BOMがあるUTF-8ファイルを読み込む例です。

UTF-8 BOMの書き出し

PythonでUTF-8 BOM付きのCSVファイルを出力する場合も、エンコードを ‘utf_8_sig’ と指定します。

import csv

header = ["header"]
output_data = ["文字コードがBOM付きのUTF-8", "のCSVファイルが出力したい"]
path = "./sample.csv"

with open(path, 'w', encoding="utf_8_sig") as f:
    writer = csv.writer(f, lineterminator='\n')
    writer.writerow(header)
    writer.writerow(output_data)

このコードは、BOM付きのUTF-8でCSVファイルを書き出す例です。

以上、PythonでUTF-8のBOMを扱う基本的な方法について説明しました。これらの知識を活用して、Pythonでの文字コード処理をスムーズに行いましょう。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です