|
▼aya さん:
こんばんは。
>以下の部分は何をしているところなのでしょうか?
>「固定長のテキストデータを400000件作成します」の意味がわからなくて・・・
>すいません。。。
ん、何がわからないのか、私にわかりません。
私が提示したコードは、新規ブックの標準モジュールにコピーしてください。
コピーした後、一度、適当なブック名で保存してください。
さて、ここからです。
提示したコードは、テキストファイルの順次読み込みを
Line Inputで行った場合とGetで読み込んだ場合との処理速度を
比較したものです。
そのために「mk_sample」というプロシジャーで
読み込むファイルをサンプルとして作成しています。
400000行のデータを作成しました。
このmk_sampleの実行によって作成されたファイルsample.txtを
プロシジャーreadtest1とreadtest2で違う方法で読み込んで
その速度を測定しています。(もっとも、ちょっと公平さを欠いたかもしれませんが)
>それと「ランダムファイルに見立てて読み取り」というところもわかりません。
readtest2では、36バイト(1行分の文字数+CRLFの合計に匹敵)を一回のGetで
読み込んでいます。
詳しいことは
ここは、HelpのOpenステートメントのランダムアクセスモードや
Getステートメントを調べてみてください。
>私が使用した「Line Input」よりも処理は遅いみたいですが、メリットはあるのでしょうか?
テキストデータの順次読み込みでの処理速度はLine Inputのほうが若干速いと思いますが、ランダムファイルの用途は色々とあります。
固定長のデータファイルですから、いきなり、50行目を取り出すこともできます。
又、読み込みと書き込みを同時に行うことも出来るという利点もあります。
DOSの時代には、シーケンシャルファイルとこのランダムファイルを使って、
販売管理システムのデータベースファイルをとして使ったこともありましたよ!!
もっとも最近は、あまり使われませんけどねえ!!
>確かにichinose さんのおっしゃるとおり、読み込んでからの処理が遅いのが原因だとは思うのですが、読み込んでから必要なデータを抜き出しセルに書き込む処理をする場合に速くする手段はあるのでしょうか?
ですから、Jakaさんの投稿をよく調べてみてください。
|
|