VB6.0SP5 を使用しております。
CSV形式のファイル読込でLineInputで最初の行から1行ずつ読み込むと時間がかかるので時間を短縮させたいのですが、最初に読み込む行数はわかっているのですが一気にその行まで飛ぶような命令文はないでしょうか?
よろしくお願い致します。
下記の VBレスキュー(花ちゃん) さんの左側のメニューの中の
「カテゴリ別サンプル一覧」
「FileSystemObject オブジェクト関係」
「テキストファイルの指定行を瞬時に読込む」
...を利用されたら如何でしょうか?
LineInputだと
一行ずつ読み込むので基本的に遅いです。
時間がかかるということだけに焦点をあてると、、
なのでbinaryで読み込むのが早いと思います
Dim buffer as binary
Dim FIlePath as string
DIm fn
filepath=""'ご自由に
fn=freefile
Open filpath for binary as fn
ReDim Buffer(LOF(fn))
Get #fn, , Buf
Close #fn
Dim strTemp
strTemp = StrConv(Buf, vbUnicode)
----------------
CSVって改行だったかわかりませんが、、
その後にsplit関数が使えれば(VB6)、
vbCrLFで区切って、配列でその行をみにいったらどうですか?
参考にならないかな。。これ。。
Get #fn, , Bufferです。すいません。
みなさんの意見を参考に作成してみました。ありがとうございました。
ツイート | ![]() |