DOBON.NET DOBON.NETプログラミング掲示板過去ログ

データ件数

分類:[.NET]

OS:XP VB .net

以前テキストファイルの読込についていろいろと教えていただきましてありがとうございました。

現在また悩んでいるところは、テキストファイルを読み込むにあたって、
Progressbarで状況表示をさせたいのです。
だから、読み込ませる前にテキストファイルのデータ件数を取得したいのですが、何かコマンドがあるのでしょうか?
  • 題名: Re[1]: データ件数
  • 著者: fuku
  • 日時: 2003/11/02 16:32:33
  • ID: 1281
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
■No1276に返信(カナぶんさんの記事)
> OS:XP VB .net
>
> 以前テキストファイルの読込についていろいろと教えていただきましてありがとうございました。
>
> 現在また悩んでいるところは、テキストファイルを読み込むにあたって、
> Progressbarで状況表示をさせたいのです。
> だから、読み込ませる前にテキストファイルのデータ件数を取得したいのですが、何かコマンドがあるのでしょうか?

fukuです。全部を読み込まないと行数がわからないようですね。
http://www.atmarkit.co.jp/fdotnet/dotnettips/036fileread/fileread.html

以上です。
■No1276に返信(カナぶんさんの記事)
> Progressbarで状況表示をさせたいのです。
> だから、読み込ませる前にテキストファイルのデータ件数を取得したいのですが、何かコマンドがあるのでしょうか?

データ件数についてはわかりませんが、
たとえば、
Dim fs As New System.IO.FileStream(パス, System.IO.FileMode.Open)
何件か読込む
fs.Position / fs.Length
で、現時点での読込んだ割合を知ることが出来ます
> データ件数についてはわかりませんが、
> たとえば、
> Dim fs As New System.IO.FileStream(パス, System.IO.FileMode.Open)
> 何件か読込む
> fs.Position / fs.Length
> で、現時点での読込んだ割合を知ることが出来ます
>
お返事ありがとうございます。
お返事頂いて本当に感謝しているのですが、処理のイメージがわきません。
これはどういった処理をしているのでしょうか?
>>Dim fs As New System.IO.FileStream(パス, System.IO.FileMode.Open)

ファイルのI/Oを行うためにFileStreamを作成します。

>>何件か読込む

StreamReaderクラスのインスタンスを作成し、そのメソッドでデータを読み込みます。

>>fs.Position / fs.Length
>>で、現時点での読込んだ割合を知ることが出来ます

fs.Positionで現在のファイル読み込み位置わかります。
fs.Lengthではファイルのサイズがわかります。
fs.Position / fs.Length でどこまで読み込まれているのかの割合が
わかるので、例えばx100したものでパーセント表示を行う等できますね。

こういう意図かと思います。

もし、ファイルの読み込みをFileStreamやStreamReader等を使用していなくて、
VBの関数を利用されているのであれば、fs.Positionやfs.Lengthのところは、
Loc関数またはSeek関数とLOF関数が相当するでしょう。
(まったく同じというわけではありません)

DOBON.NET | プログラミング道 | プログラミング掲示板