CSVGuide2026-10-05

CSVのCRLF・LFとは?改行コードの違いでインポートに失敗するとき

約5分で読めます

こんな人向けCSVを業務システムへインポートする人
難易度入門

CSVの行末に使われるCRLFとLFの違い、WindowsとUnix系で扱いが変わる理由、インポートエラー時の安全な確認方法を解説します。

目次を開く

CSVを別システムへ入れたら「形式が不正」「行数が合わない」と言われる。

列数も文字コードも問題なさそうなら、次に確認したいのが行末の改行コードです。

CSVでは見た目が同じ改行でも、ファイル内部では CRLF と LF など複数の表現があります。

CRLFとLFの違い

代表的な行末は次の二つです。

  • CRLF: \r\n
  • LF: \n

Windows系ではCRLF、Unix・Linux・macOS系ではLFが広く使われています。

現在の多くのソフトは両方を扱えますが、古いシステムや仕様の厳しいインポーターでは、期待する改行コードが決まっていることがあります。

RFC 4180では、CSVのレコードはCRLFで区切る形式として説明されています。一方、実際の現場ではLFだけのCSVも普通に流通しています。

つまり、「CSVなら必ず一種類」というより、受け取り側の仕様を確認するのが現実的です。

改行コードが原因で起きる症状

よくあるのは次のようなケースです。

  • 全行が一行として認識される
  • 行数が想定と合わない
  • 一部のインポーターだけ失敗する
  • Windowsでは通るがLinux上の処理で崩れる、またはその逆
  • バッチ処理では失敗するのに表計算ソフトでは普通に開ける

表計算ソフトが吸収する差でも、別システムではエラーになることがあります。

セル内改行とは分けて考える

ここで重要なのが、レコードを区切る改行とセルの中に含まれる改行は別物ということです。

CSVでは、引用符で囲まれた値の中に改行を含めることがあります。

そのため、ファイル全体に対して単純に「LFを全部CRLFへ置換」のような処理をすると、セル内改行まで変えてしまい、別の問題を作る可能性があります。

セル内改行については、CSVのセル内改行とダブルクォートで詳しく整理しています。

まず確認する順番

インポートエラーが出たら、いきなり変換せず次の順番で確認します。

  1. 元CSVをコピーして残す
  2. 受け取り側が要求する改行コードを確認する
  3. 現在のCSVがCRLFかLFか調べる
  4. セル内改行があるか確認する
  5. 作業用コピーだけを変換する
  6. 少量データで再インポートする

VS Codeなど、改行コードを表示できるテキストエディタを使うと確認しやすいです。

変換するなら「一貫性」を見る

問題になるのはCRLFかLFかだけではありません。

一つのファイル内で改行コードが混在していると、処理系によって挙動が変わることがあります。

複数のシステムからデータを結合したCSVや、スクリプトで追記したファイルでは特に注意します。

変換後は、行数、列数、引用符、セル内改行まで再確認します。

まとめ

CSVのCRLFとLFは、画面ではほぼ見えません。

しかし、インポート先が厳密なら、それだけで処理が止まることがあります。

受け取り側の仕様を確認 → 現物の改行コードを確認 → コピーで変換 → 再検査。この順番なら、原因を見失いにくい。

CSV全体の構造もまとめて確認したい場合は、CSV Preflightでインポート前にチェックできます。

NEXT

次に読む。

CSV / Guide

CSVの空行・空レコードでインポートエラーになる原因|末尾の空行も確認

約5分

CSVに空行や空レコードが混ざるとインポートエラーや空データ作成の原因になります。末尾の空行、区切り文字だけの行、空白行の確認方法を解説します。

CSV / Guide

CSVの空欄とNULLは同じじゃない|インポートで値が消える前に確認すること

約5分

CSVの空欄、空文字、NULLはシステムによって扱いが異なります。顧客データや商品データのインポート前に確認したい違いと事故の防ぎ方を解説します。

CSV / Guide

CSVのセル内改行でインポートが崩れる原因|ダブルクォートの基本

約5分

CSVの備考欄や住所に改行が入ると列ずれや行ずれが起きることがあります。セル内改行とダブルクォートの関係、確認方法をわかりやすく解説します。

SHARE
XBLUESKYFACEBOOKLINE