ファイルからデータを読み込んでプルダウン表示するには?

解決


ふくろう  2004-01-22 14:55:07  No: 111540  IP: [192.*.*.*]

お世話になってます。ふくろーです。
早速ですが、aというファイルがあり、そのファイルの中身は

0,あああああ,c:\aaa
1,いいいいい,c:\bbb
2,ううう,
3,555555,
3,666666,
3,777777,
3,888888,
3,999999,

という風になっています。
ここから、”3,”が頭についている行の数字部分だけ(例えば"555555")
を抜き出し、コンボボックスで表示したいのです。
調べていくと、Split関数やらReadLineやら辺りを
使えばいいのかなと思うのですが、
二つをどう結びつけたらいいのかわかりません。

Dim fso, fileA
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileA = fso.OpenTextFIle("c:\aaa", ForReading)

ここまで書いたんですが、この後、fileA.ReadLineで
読み込んだものから数字("555555"部分)をSplitで切り取って
Combo1.addItemで追加?
そもそもReadLineがよくわかっていないのですが、
複数行を繰り返し一行ずつ読んでいくことは可能なのでしょうか?
aというファイルから一行ずつ読めたとしても、
まだそこから必要な数字の部分だけを切り出さないといけません。。。
質問がまとまっていないので、分かりづらい部分もあるかと思いますが、
どなたかご教授下さい。。よろしくお願いします〜

編集 削除
特攻隊長まるるう  2004-01-22 17:12:55  No: 111541  IP: [192.*.*.*]

コンパイラに任せたような曖昧な定義でなく、きっちり
変数を定義していれば簡単に理解できると思いますが…
ReadLine の戻り値は調べましたか?文字列が返ってきますので
好きなように加工してください。
CSV になってて形が決まってるなら InStr 関数と Mid 関数でも
できそうです。
そのあたりは過去ログにいくらでもありそうです。
[VB6.0]
Option Explicit
    Dim fso As New FileSystemObject
    Dim fileA As TextStream
    Dim retString As String
    
    If Dir("c:\aaa", vbNormal) <> "" Then
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set fileA = fso.OpenTextFile("c:\aaa", ForReading)
        With fileA
            Do While .AtEndOfStream <> True
                retString = .ReadLine
                '[文字列の加工]
                '[コンボボックスの項目追加]
            Loop
            .Close
        End With
    End If

編集 削除
ふくろう  2004-01-22 18:10:21  No: 111542  IP: [192.*.*.*]

毎回、ありがとうございます。
色々調べてみたんですが、わかりました!
FileSystemObjectのTextStream関連を調べて、
色々使ってみたらできました。
ありがとうございました。

編集 削除