VB6.0如何将TXT部分数据存入数组,以便后续处理?
测试状态:vvangHH测试时间:2009-07-15角度1号2号3号4号5号6号5度2.12.53.54.56.32.110度2.52.13.84.46.22.115度...
测试状态:vv ang HH
测试时间:2009-07-15
角度 1号 2号 3号 4号 5号 6号
5度 2.1 2.5 3.5 4.5 6.3 2.1
10度 2.5 2.1 3.8 4.4 6.2 2.1
15度 2.1 2.5 3.5 4.5 6.3 2.1
20度 2.1 2.5 3.5 4.5 6.3 2.1
25度 2.1 2.5 3.5 4.5 6.3 2.1
30度 2.1 2.5 3.5 4.5 6.3 2.1
35度 2.1 2.5 3.5 4.7 6.3 2.1
40度 2.1 2.5 3.5 4.5 6.3 2.1
测试结束
TXT格式如上,但行和列都不固定的,而且我只要第4到11行,2到7列的数据。最好能给出源码和注释。初学VB,呵呵! 展开
测试时间:2009-07-15
角度 1号 2号 3号 4号 5号 6号
5度 2.1 2.5 3.5 4.5 6.3 2.1
10度 2.5 2.1 3.8 4.4 6.2 2.1
15度 2.1 2.5 3.5 4.5 6.3 2.1
20度 2.1 2.5 3.5 4.5 6.3 2.1
25度 2.1 2.5 3.5 4.5 6.3 2.1
30度 2.1 2.5 3.5 4.5 6.3 2.1
35度 2.1 2.5 3.5 4.7 6.3 2.1
40度 2.1 2.5 3.5 4.5 6.3 2.1
测试结束
TXT格式如上,但行和列都不固定的,而且我只要第4到11行,2到7列的数据。最好能给出源码和注释。初学VB,呵呵! 展开
展开全部
Dim A(), B(1 To 8, 1 To 6), str As String
Private Sub Command1_Click()
Erase A() '用来保存每行文档数组
Erase B() '用来保存所要数据数组
Open App.Path & "\1.txt" For Input As 1 '打开文本文档
'循环每行并存储到A数组
Do While Not EOF(1)
ReDim Preserve A(i)
Line Input #1, A(i)
i = i + 1
Loop
'开始采集数据
For i = 1 To 8
str = Right(A(i + 2), Len(A(i + 2)) - 3)
For j = 1 To 6
For n = 1 To Len(str)
If IsNumeric(Mid(str, n, 1)) Then
For m = n + 1 To Len(str)
If IsNumeric(Mid(str, m, 1)) And Not IsNumeric(Mid(str, m + 1, 1)) And Mid(str, m + 1, 1) <> "." Then
B(i, j) = Mid(str, n, (m - n) + 1): str = Right(str, Len(str) - m): Exit For
End If
Next
Exit For
End If
Next
Next
Next
'输出Print 测试
For i = 1 To 8
str = ""
For j = 1 To 6
str = str + B(i, j) + vbTab
Next
Print str
Print vbCrLf
Next
Close #1
End Sub
满足你要求,有不懂的追问
Private Sub Command1_Click()
Erase A() '用来保存每行文档数组
Erase B() '用来保存所要数据数组
Open App.Path & "\1.txt" For Input As 1 '打开文本文档
'循环每行并存储到A数组
Do While Not EOF(1)
ReDim Preserve A(i)
Line Input #1, A(i)
i = i + 1
Loop
'开始采集数据
For i = 1 To 8
str = Right(A(i + 2), Len(A(i + 2)) - 3)
For j = 1 To 6
For n = 1 To Len(str)
If IsNumeric(Mid(str, n, 1)) Then
For m = n + 1 To Len(str)
If IsNumeric(Mid(str, m, 1)) And Not IsNumeric(Mid(str, m + 1, 1)) And Mid(str, m + 1, 1) <> "." Then
B(i, j) = Mid(str, n, (m - n) + 1): str = Right(str, Len(str) - m): Exit For
End If
Next
Exit For
End If
Next
Next
Next
'输出Print 测试
For i = 1 To 8
str = ""
For j = 1 To 6
str = str + B(i, j) + vbTab
Next
Print str
Print vbCrLf
Next
Close #1
End Sub
满足你要求,有不懂的追问
展开全部
你是使用什么语言?
是文本文件?
数据之间是几个空格?什么样的空格?
是文本文件?
数据之间是几个空格?什么样的空格?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把要求写的详细些,例如行列乱成什么样,我才能根据你的要求编写出符合要求的东西,行列的格式是否规范,就是说行列的数字之间的距离是否相同等,你给个QQ吧,我写好把文件直接发给你吧!
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询