Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
一次元配列を二次元配列に代入していくプログラム
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9228#CommentId12136
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
珪藻
 (社会人)
投稿日時
2009/7/17 00:17:31
Imports System
Imports Microsoft.VisualBasic.FileIO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'項目書込み
Dim Writer0 As New IO.StreamWriter("C:\VBTestY.txt")
Writer0.WriteLine(",生産冷却水,生産冷却水,生産冷却水,生産冷却水,生産冷却水,生産冷却水,冷却塔1,冷却塔1,冷却塔2,冷却塔2" + vbCrLf + ",熱交出口温度,送水圧力,送水流量(瞬時),送水流量(積算),導電率,補給水量,往温度,還温度,往温度,還温度")
Writer0.Close()
'/項目書込み
Dim arr2(50, 20) As String
Dim tr, sr, st, sk, sh, test As String
Dim a, s, k, i As Integer
s = 0
tr = "01"
sr = "00"
test = "[INFOMATION]"
test = "Created=2009/06/26 09:58:53 Complete=Y Modify=N"
For i = 0 To 11
If (s = 0) Then
tr = "01"
k = 46
ElseIf (s = 1) Then
tr = "02"
k = 43
ElseIf (s = 2) Then
tr = "03"
k = 46
ElseIf (s = 3) Then
tr = "04"
k = 45
ElseIf (s = 4) Then
tr = "05"
k = 46
ElseIf (s = 5) Then
tr = "06"
k = 45
ElseIf (s = 6) Then
tr = "07"
k = 46
ElseIf (s = 7) Then
tr = "08"
k = 46
ElseIf (s = 8) Then
tr = "09"
k = 45
ElseIf (s = 9) Then
tr = "10"
k = 46
ElseIf (s = 10) Then
tr = "11"
k = 45
ElseIf (s = 11) Then
tr = "12"
k = 46
End If
'読み込み
Dim Sta As String = "C:\REP2009" + tr + ".txt"
Dim Reader As New IO.StreamReader(Sta)
s = s + 1
a = 0
Do While a < k
sr = Reader.ReadLine()
'配列置換
Dim arr1() As String = Split(sr, ",")
sh = arr1(a)
arr2(i, a) = sh
'/配列置換
a = a + 1
Loop
Reader.Close()
'/読み込み
'置き換え
st = sr.Replace("AVERAGE", tr)
'/置き換え
'書込み
Dim textFile As String = "C:\VBTestY.txt"
'文字コード(ここでは、Shift JIS)
Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding(932)
'書き込む文字列
Dim str As String = st + vbCrLf
'textFileの末尾にstrを書き加える
System.IO.File.AppendAllText(textFile, str, enc)
'/書込み
Next i
あるカンマ区切りになっているテキストファイル(複数)の任意の行を1次元配列で読み込みし、
それを二次元配列に代入していくプログラムなのですが、Do While文の一周目はうまく行くのですが、
二週目に
sh = arr1(a)
の部分で
IndexOutOfRangeExceptionはハンドルされませんでした。
というエラーが発生しまして、色々調べてるのですが改善されずもう3日目・・・
どなたかアドバイス下さい。