1行の文字列データをデータ毎に分類、格納するには?

解決


せら  2004-05-26 23:21:03  No: 83581  IP: [192.*.*.*]

初めまして。VBを使っていてわからないところがあるので、少しお聞きしてもよろしいでしょうか。
以前はC言語をやっていたので、ファイル処理の扱いの違いに戸惑っています。。

ID  num  name    data[1-5]
20000  50  takahumi2100  0,00,2,3,5
20001  23  hayate2100  0,2,54,5,3
20002  40  ayaka2100  0,3,4,43,5


というデータベースがテキストファイル形式で保存されていたとしますね。
1レコードの書式としては
ID(TAB)num(TAB)name(TAB)data1,data2,data3,data4,data5(改行)
といった感じです。
nameとdataは可変長のデータです。
そこで、このデータの1レコードを
Type profile
  id  As Long
  num  As Integer
  name  As String
  data1  As Integer
  data2  As Integer
  data3  As Integer
  data4  As Integer
  data5  As Integer
End Type
といった感じの構造体に格納したいのですが、どういった処理をすれば良いでしょうか?
Line Inputを使うにしても、使ったあとの文字列の扱い方が分からなくて。。
ご教授宜しくお願いします。

編集 削除
Say  2004-05-27 00:58:56  No: 83582  IP: [192.*.*.*]

Line Inputで1行読み込んだ後、vbTabをデリミタにSplitすれば、
配列の第0要素〜第3要素にID〜data[1-5]が分離格納されます。

さらにできた配列の第3要素をカンマをデリミタにSplitすれば、
配列の第0要素〜第4要素にdata1〜data5が分離格納されます。

必要に応じてキャストしながら構造体(ユーザ定義型)に格納してください。
ま、VBの場合、この程度なら暗黙のキャストしてくれますから、
そのまま代入しても大丈夫ですが。

なお、VB6の Integer は signed short int に該当しますから、
IDが32767を超えるようなら、データ型を再考してください。
念のため。

編集 削除
せら  2004-05-27 03:05:59  No: 83583  IP: [192.*.*.*]

ありがとうございます!
しっかりできました。
そんな便利な関数があったんですね。
全然調べ方不足でした。
まだまだ精進したいとおもいます。

編集 削除