作者: Ito Takahiro
日時: 2003/7/28(21:57)
伊藤です。

藤岡さん、ありがとうございます。
もっと問題を具体的に書くべきでしたが、

>while {[gets $fd line] >= 0} {
>で読み込めば改行は削除して読み込むはずですが・・・

とのことで、gets はコントロールコードの手前まで読み込むのか
なと思い、全く違う方法ですが問題が解決できました。

そもそも問題というのは、
・UNIXサーバに複数(1000以上)のテキストファイルがある
・そのファイルは不特定多数よりFTPでWindowsからアップロード
  される
・アップロードの際、バイナリモード、アスキーモード何でもあり

このファイル達を全てローカルのPCにダウンロードし、Tclで書い
たフィルタを通して、再びアップロードする・・・・・
という事をしたかったのです。
その際、アスキーモードでダウンロードすると、バイナリでアップ
ロードされたファイルは、行の末尾に余計なコントロールコードが
あったため、そのコントロールコードを削除したかったのですが、
regsubではうまく動きませんでした。
(通常の改行は改行として出力したかった)
ここで、藤岡さんのヒントがもらえたので、全てのファイルをバイ
ナリ-モードでダウンロードし、フィルタをかけたところ、問題な
く動作しました。
Windowsのテキストエディタでは、改行となっていなくても(LFの
み)、Tclの gets で1行として読む事ができました。

おさがわせしました。

## なんか状況がうまく説明できない・・・ m(__)m


-- 
伊藤 孝浩
mailto:taka@...