VB6でのシーケンシャルファイルの読み込みと書き込みをするには?

解決


キリン  2004-01-14 11:44:28  No: 81443  IP: [192.*.*.*]

まったくの素人で申し訳ありません。VB6を使用してシーケンシャルファイル (txt)からの読み出し、1行ずつ読み込み、1次元配列に格納(書き込み?)のコマンドを教えていただけないでしょうか?

編集 削除
いちゆ  2004-01-14 11:51:15  No: 81444  IP: [192.*.*.*]

dim ff as Long
dim st as String
dim Lines() as String
dim LineCount as Long

ff=freefile
open "c:\fiLe.txt" for input as #ff
  while not eof(ff)
    Line Input #ff,st
    LineCount=LineCount+1
    redim Preserve Lines(1 to LineCount)
    Lines(LineCount)=st
  wend
close #ff

多分…最近こういうのやってないから。

編集 削除
キリン  2004-01-15 10:58:20  No: 81445  IP: [192.*.*.*]

いちゆ  様  ありがとうございます。

教えていただきましたプログラムについて
可能であれば教えていただきたいのですが・・・

ff = FreeFile
'テキストファイルをオープン
Open "c:\fiLe.txt" For Input As #ff
' ファイルの終端までループを繰り返し。
  While Not EOF(ff)
'1 行づつ変数に読み込みます。
    Line Input #ff, st
    LineCount = LineCount + 1
    ReDim Preserve Lines(1 To LineCount)
    Lines(LineCount) = st
  Wend
'ファイルを閉じる
Close #ff

上記の中にあります

LineCount = LineCount + 1
    ReDim Preserve Lines(1 To LineCount)
    Lines(LineCount) = st

については
『txtが無くなるまで繰り返す』
という命令になっているのでしょうか?
VB初心者で申し訳ありません。

編集 削除
マフユ  2004-01-15 11:55:09  No: 81446  IP: [192.*.*.*]

提示されたコードの中で分からない箇所はMSDN  HELPで
調べましたか?  分からない箇所があればその単語を
キーワードにして調べて下さい。

http://www.yahoo.co.jp/  等の検索エンジンでも見つかります。

ReDim と Preserve 
そうすれば何をしているか分かるはずです。

編集 削除
吉野  2004-01-15 12:15:40  No: 81447  IP: [192.*.*.*]

以下のようになっています。
LineCount = LineCount + 1 ← 配列の上限値を変更
ReDim Preserve Lines(1 To LineCount) ← 配列の内容を保持したまま、上限を変更(添字は 1〜LineCountまで)
Lines(LineCount) = st ← 配列の上限に読込んだ値をセット

編集 削除
キリン  2004-01-15 14:11:34  No: 81448  IP: [192.*.*.*]

マフユさん、吉野さん  お手数お掛けして申し訳ありませんでした。

編集 削除