TITLE:  [60] ありがとうです&また質問です
DATE : 2001-02-19 11:21:00
--------------------------------------------------
こんにちわ、a-murataです。

さっそくアドバイスを
しかもコードつきで、たいへんありがとうございます。
Err.Numberを使うわけですか。なるほどです。
いろいろ奥が深いですねVB関係は。
さっそくテストしてみます。

さて、また質問があるのですが(^^;)
eVBではFileコントロールのLOCプロパティだったかな
これにそのファイルのサイズがバイト数が返ってきます。
Input関数にこれを引数として渡すことで
LineInputStringなどとは比較にならないくらいに
高速にファイルを読み込むことができることが
わかりました。

で、たとえばこうしてFileBufという変数に
ファイルの内容をまるごと読み込ませたとして
これを1行毎に分割してそれぞれを配列
LineBuf()に放り込みたいと思うのですが
この方法がよくわかりません。
Instrを使って全文検索させようとしているのですが
ファイルからLineInputStringを使って1行ずつ
読んで、それにたいしてInstrしていると
とにかく時間がかかってしまってどうしようもないのです。
そこであるタイミングでファイルの内容を
すべて読み込んでおいて、検索のたびにファイル読み込みを
しなくても、配列を検索すれば、ちょっとは高速に
なるかなと思った訳なのです。

アプリ起動時にでもファイルの内容を読み込んでおけば
いいかなと思っていますが、そのとき上記の処理を
したいわけです。

なにかよい方法はないでしょうか?
C言語だと行頭を探してそのポインタを
配列に入れておくだけでよいのですけどね。
VB環境ではそういうこともできないようですしね。

しかしFile.Input(バイト数)は
とんでもなく速いと思いますよ。
マシンにもよるのかなぁ。
うちはシグマリオンですけどね。

それではよろしくお願いします。