2018年10月31日水曜日

Excel 内の改行は改行コードがLF


人が目で見る改行は誰が見ても改行ですが、コンピュータの内部では文字コードで構成されています。
一般的に3種類のコードがあります。
主に「CR」、「CR」+「LF」、「LF」の3種類があります。

参考:
vbCrLf、vbLf、vbCr、vbNewLineの違いに関して


Windows では一般的に 「CR」+「LF」 の chr(13)+chr(10)
Linuxでは一般的には「LF」のchr(10)

が使われます。秀丸エディタの設定で表示されるようになるので確認してみてください。


Excel の内容をそのままWindows バッチとして実行したところ失敗しました。LFをCR+LFに置換するとエラーが発生しなくなりました。バッチ処理で改行が LF だと問題があるようですね。

参考:
Excelのセルの内容をテキストにコピーしてバッチファイルとして実行するとおかしくなる件

その他
改行を他の文字に置換(変換)する方法
Windowsでテキストの改行を置換する方法

文字コードはよくトラブルの元になるので注意する必要がありますね。