In-Reply-To: [ruby-list:6891] Re: http_get.rb

藤本さん、おはようございます。

>>[ruby-list:6891] Re: http_get.rb
>>From: 藤本尚邦 / FUJIMOTO Hisakuni <hisa / imasy.or.jp>
>>
>>#メールスレッドの本題をよくわかってないので何ですが、Subjectから考え
>>#て関係あるのかなということで..

当たりです。http, ftp, telnet 等では、CR LF が改行に使われていますが、
これを確実に出力するにはどうするかという事だったので。

DOS ベースの場合は binmode にするのを忘れると、\r\n で CR CR LF になっ
てしまい、MacPerl 等では、\r\n で LF CR になってしまうので、どのような
方法が良いのだろうかと。

>>  Mac版のsocketモジュールを簡単にテストするため書いた下のようなスクリ
>>プトは期待どおり動作します。このスクリプトでは、ソケットに対してCRLFを
>>当り前のように送り、入力を行単位で表示してます。これがちゃんと動くとい
>>うことは、TCPソケットに対するCRLFをライブラリ(GUSI)がうまいこと処理し
>>てくれてるのかなぁとも思います。

なるほど。うまく出来ていますね。色々と苦労した Mac プログラマ達のアイ
ディアでしょうか。これで MacPerl 等ではあまり意識しなくても動いていた
わけですね。

DOS 版も TCPsocket(BasicSocket も?) では binmode を無効にすると、どの
環境でも \r\n で CR LF が出力されるようになり、これで一応問題解決でしょ
うか。


青山 和光 Wakou Aoyama <pxn11625 / niftyserve.or.jp>