VBA開発

改行コードの違い「CR」と「LF」と「CRLF」

改行コードは「3種類」存在する

「csvファイル」や「txtファイル」を扱い始めると、改行コードを理解する必要性があります。
普段何気なく使用している改行ですが、3種類の改行コードが存在します。

「CR」と「LF」と「CRLF」です。全て改行コードですが、少し意味合いが異なるケースもあり、
マクロでも意識する必要性が少しだけあります。
※システム間の橋渡しは「CRLF」がほとんどです。

CR(キャリッジリターン)

意味はCarriage Return(復帰)
カーソルを左端の位置に戻すこと。

LF(ラインフィード)

意味はLine Feed(改行)
カーソルを新しい行に移動すること。

CRLF(CR+LF)

CRとLFを足したもの
カーソルを左端の位置に戻し、新しい行に移動すること

3種類の改行コードの由来

由来はタイプライターであり、それをコンピュータにも適応させた。
Wikipedia参照。

基本的には前述した「CRLF」のみ覚えていればよいですが、
うまくテキストデータを開けられない場合など、想定外の動きをする場合は、
改行コードを疑ってください。

OSでの改行コードの違い

改行コード使用しているOS
CRmacOS(9以前)
LFUnix、Linux、macOS(9以降)、Android
CRLFMS-DOS 、Microsoft Windows

マクロを動かすメインはWindowsだと思いますので、
上記のように、CRLFと時々LFが出てくるくらいの認識で構いません。

ネットショップの売上データやPOSデータ、販売管理ソフトのマスタデータなどは、
システム側でCRLFを指定して、テキスト出力しているはずです。

改行コードなんて、どう調べたらいいかわからない

通常、Windowsのメモ帳でみても改行は改行している程度しかわからず、
改行コードなんてものはわかりません。

sakura Editor秀丸のようなテキストエディタのソフトを導入しましょう。

改行コードテキストエディタでの表現
CR
LF
CRLF

上記のように、テキストエディタを導入する事で、改行コードの種類がわかりました。
それ以外にも、システムテキスト(CSV)システムといった、
システムの橋渡しの際に発生するエラー行数も、テキストエディタなら判別できます。

マクロを触る以上、どのコードで、どのエラーが出たか判断する為にも、
Windows付属のメモ帳ではなくテキストエディタの導入をすべきです。

 

コメント

タイトルとURLをコピーしました