こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

VB 配列

今,VBでテキストファイルを読込み配列に入れるという作業を書いたのですが,うまくいきません.
初回例外が発生してしまいます.配列は文字列の配列になります.

どなたかご教示のほどよろしくお願いいたします.


'ファイルの読込み
Dim path1 As String = "C:\Users\aleph_H.S\Desktop\気象台データインポートツール\気象台データインポートツール\"
Dim path2 As String = "気象台データリスト.txt"
Dim Mypath As String = path1 + path2
' StreamReader の新しいインスタンスを生成する
Dim cReader As New System.IO.StreamReader(Mypath, System.Text.Encoding.Default)
' 読み込んだ結果をすべて格納するための変数を宣言する
Dim stResult As String = String.Empty
Dim matrix(,) As String
Dim ic As Long = 0
Dim icc As Long = 0
ReDim Preserve matrix(80, 3)
' 読み込みできる文字がなくなるまで繰り返す
While (cReader.Peek() >= 0)
' ファイルを 1 行ずつ読み込む
Dim stBuffer As String = cReader.ReadLine()
' 読み込んだものを追加で格納する
stResult &= stBuffer & System.Environment.NewLine
ic = ic + 1
'カンマ区切りで分割して配列に格納する
Dim stArrayData As String() = stResult.Split(","c)
For Each sstData In stArrayData
icc = icc + 1
'文字列をInteger型に変換
matrix(ic - 1, icc - 1) = sstData
Next
End While
cReader.Close()

投稿日時 - 2012-12-25 18:09:39

QNo.7861282

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

詳しくは見ていませんが、While~End While内でstBufferとstArrayDataの変数を宣言しています、ループの1回目は問題ないですが2回目以降はstBufferとstArrayDataは既に宣言済みなのでエラーになります。変数stBufferとstArrayDataはWhile~End Whileに入る前に宣言しましょう。

投稿日時 - 2012-12-26 01:09:20

あなたにオススメの質問