首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

初学者请问vb从任意txt文件中读入数组,能够在程序中确定数组大小

2012-03-31 
菜鸟请教vb从任意txt文件中读入数组,能够在程序中确定数组大小txt文件中数组大小已知例如txt文件中数组为-

菜鸟请教vb从任意txt文件中读入数组,能够在程序中确定数组大小
txt文件中数组大小已知
例如txt文件中数组为

-22 -17.7 -25.9 909.1 1.8 78 0 145.24
-26.7 -20.2 -29.6 910.5 3 77 0 314.25
-26.4 -18.8 -31.7 907.5 2.3 75 0 220.58
-25.9 -19 -31.6 910.6 1.8 76 0 317.33
-21.2 -14.2 -26.2 911.6 4.5 78 0 308.35
-21.8 -16.7 -25.7 912.3 4.3 79 0 320.86
-18.7 -11 -23 909.5 3.3 79 0 322.79
-18.7 -12.9 -22.2 908.1 4 77 0 216.06
-17.8 -14.1 -19.6 909.6 5.3 73 0 156.17
-16.9 -13.4 -21.8 907.7 5 75 0.6 230.01
-15 -10.3 -18.6 905.2 5.8 73 0 253.87
-17.5 -12.4 -22 905.2 2.3 78 0 222.2
-21 -15 -26.8 904.6 1.3 74 0 257.72
-22.9 -18.4 -27.4 905.9 4.3 73 0.1 225.68
-24.1 -16.7 -28.6 914.5 3 73 0 342.06
-23 -15.8 -29.9 913.6 3.3 76 0 287.17

Open "myfile.txt" For Input As #1
Do Until EOF(1)
  Line Input #1, z
 
  'st = Split(z, " ")
  st = splipt(z, Chr(13) & Chr(10))

  For j = 0 To 7: dat(i, j) = Val(st(j)): Next
  i = i + 1
Loop
Close #
若数组未知大小,该如何读入,并确定其大小

[解决办法]

VB code
Private Sub Command1_Click()   Open "c:\11.txt" For Binary As #1   Dim iStr As String, i As Integer, j As Integer   Dim iArr() As Single, iRow() As String, iCol() As String      iStr = StrConv(InputB(LOF(1), 1), vbUnicode)   iRow = Split(iStr, vbCrLf)   iCol = Split(iRow(0))   ReDim iArr(UBound(iRow), UBound(iCol))   For i = 0 To UBound(iRow)       iCol = Split(iRow(i))       For j = 0 To UBound(iCol)           iArr(i, j) = iCol(j)       Next   NextEnd Sub
[解决办法]
TXT文件最后一行要有一空行(即最后一行要有一个回车键),否则会少读入一行。

热点排行