2007年5月15日
改行コード
改行コードにはいろいろある。WebサーバがUNIX/Apacheの場合など、ブラウザを通すと勝手に書き換えられたりして、行頭が乱れたりしてしまう。やれやれだ。Firefoxも改行コードが若干怪しく、LFになってしまう場合もあるので、注意が必要だ。
VBAで使う場合と改行コード
Chr(13)---CR---Mac---キャリッジリターン
Chr(10)---LF---Unix---ラインフィールド
Chr(10)+Chr(13)--Win
昔タイプライターという物がありました。今も使われている人も居られるかも知れませんが、私もタイプしている人にあこがれたことがあります。詳しくはありませんがタイプライターで1行分を打ち終わり、次の行に進めるにはまずタイプのヘッドを1行の先頭(左隅)に戻します。これをキャリッジ(印字ヘッド)リターンといいます。そして次に1行下に印字位置を移動します。これをラインフィードというそうです。
やがて、電動でタイプする物が現れ、制御する為に上記動作を行うコードとして使われ始めたと思います。
現在では、テキストの1行の終わりコードとして利用されていますが、各OS、アプリケーションでその意味はまちまちです。
[javascript][Firefox]実行環境がWindowsなのにFirefoxの改行コードはLFのみ?以前javascriptでバイト数チェックを行うファンクションを作ったのですが、Firefoxで不思議な現象が発生したのでメモ。
実行環境がWindowsの場合、改行コードはCR+LFとなります*1。実際IE6でtextarea要素内で改行してjavascriptのescape関数をコールした場合、「%0D」「%0A」となり2バイトの結果が返りました。Opera9でも結果は同様でした。
しかし、FirefoxとNetscapeは「%0A」のみなんですよね。「UNIXかよ!」みたいな。仕方がないのでnavigator.userAgentで回避するようにしましたが、これってどうなんだろう。
やっぱりここらへんはサーバサイドに任せたほうがいいのかもしれませんね。
- by editor
- at 14:22

編集長のおすすめの一冊!2010
comments