tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルファイルの読込(VB.NET)
記事No739
投稿日: 2004/02/20(Fri) 21:40
投稿者にきゅ〜
[OSのVer]:Windows2000    [VBのVer]:VB.NET2003
皆様 お世話になります。
.NET Compact 1.0(SP2)を使用して、
ファイルの読込をさせていますが、非常に困ってます。
ファイルを読込時にアクセスポイントなどを指定して
必要な行のみ取得する方法ってあるのでしょうか?
ナニブン勉強不足で解らないので方法があるなら教えて頂けないでしょうか?
(下記がソースです。)
------------------------------------------------------------------
Dim Rfile As System.IO.StreamReader
Dim StrLine1 As String                  '
Dim Shift_JIS As System.Text.Encoding
Shift_JIS = System.Text.Encoding.GetEncoding("Shift_JIS")
Rfile = New StreamReader(\My Documents\Data\Test1.txt, Shift_JIS)
Do
  StrLine1 = Rfile.ReadLine()
   If StrLine1=Nothing then Exit Do
   IF Mid(StrLine1,1,4)=5000 THEN
      Exit DO
   End IF
Loop Until StrLine1=Nothing
---------------------------------------------------------------------

[ツリー表示へ]
タイトルRe: ファイルの読込(VB.NET)
記事No741
投稿日: 2004/02/21(Sat) 06:10
投稿者よねKEN
参照先http://www5b.biglobe.ne.jp/~yone-ken/
> ファイルの読込をさせていますが、非常に困ってます。
> ファイルを読込時にアクセスポイントなどを指定して
> 必要な行のみ取得する方法ってあるのでしょうか?

単に指定開始バイト数等を指定できればよいということであれば、
StreamReaderのBaseStreamでStreamを取得し、このStreamのSeekメソッドで
読み取り位置を変更すればよいですが、
何行目という指定は前から順に読み込んで改行を探さないといけませんのでできません。
ReadLineメソッドで空読みして下さい。

[ツリー表示へ]
タイトルRe^2: ファイルの読込(VB.NET)
記事No744
投稿日: 2004/02/21(Sat) 15:35
投稿者にきゅ〜
[OSのVer]:Windows    [VBのVer]:VB.NET  
> > ファイルの読込をさせていますが、非常に困ってます。
> > ファイルを読込時にアクセスポイントなどを指定して
> > 必要な行のみ取得する方法ってあるのでしょうか?
>
> 単に指定開始バイト数等を指定できればよいということであれば、
> StreamReaderのBaseStreamでStreamを取得し、このStreamのSeekメソッドで
> 読み取り位置を変更すればよいですが、
> 何行目という指定は前から順に読み込んで改行を探さないといけませんのでできません。
> ReadLineメソッドで空読みして下さい。
  ありがとうございます。
 指定開始バイト数の指定は上記で試してみます。
 実際,ReadLineメソッドで空読みを約6千行空読みさせてみましたが
 期待していたより早かく読み終えたのでなんとか解決すると思ってます。
 お騒がせしました。

[ツリー表示へ]