使用VB读取文本中的数据

文本中的数据是下面形式48.641188.543831E-0349.06816.026399849.949915.710701E-0252.20577.113473655... 文本中的数据是下面形式
48.64118 8.543831E-03
49.06816 .0263998
49.94991 5.710701E-02
52.20577 .1134736
55.61559 .193804
59.32556 .312174
63.27519 .4525032
67.78375 .6236889
72.01213 .8197424
74.34309 1.028989
74.39476 1.252174
72.67766 1.500091
请问使用VB6如何编程能把两列数据读取到对应的两个数组a()和b()中,最好能使得数组中的内容直接编程可以使用的数,而不是字符串。
我就是按照你说的那样定义a和b数组都是Single类型的啊,经过反复测试打印的时候是Print a(j); " "; b(j) 则显示字符串(有字母E打印出来)改成Print Val(a(j)); " "; Val(b(j))就打印出来数值啦。
不过总算弄出来了,谢谢啊!分数如数奉送!
展开
 我来答
cwa9958
2007-03-21 · TA获得超过1885个赞
知道大有可为答主
回答量:2504
采纳率:0%
帮助的人:2018万
展开全部
Private Sub Command1_Click()
Dim a() As Single, b() As Single '定义动态数组
Dim d() As String
i = 0
Open App.Path & "\suju.txt" For Input As #1 '打开文件
Do While Not EOF(1) '读数据循环
ReDim Preserve a(i) '指定数组个数,Preserve关键字是保留数组数据
ReDim Preserve b(i)
Line Input #1, c$ '读数据,赋给字符串c
c = LTrim(c) '去除前面空格
d = Split(c, " ") '把c拆成数组,赋给d数组,以空格为分隔符
a(i) = Val(d(0)) '把d数据赋给数组a(),b()
j = 1 '处理两个数据之间多个空格的问题
Do While d(j) = ""
j = j + 1
Loop
b(i) = Val(d(j))

i = i + 1 '把数组a b的个数加1
Loop
Close '关闭文件
For j = 0 To i - 1 '打印出来,校对一下,是不是正确
Print a(j); " "; b(j)
Next

End Sub

这说明你的数据的最前面是空格.
呵呵,是搞错了,
现在改了,你试试

你定义的数组的类型是什么呢?
帐号已注销
2007-03-21 · TA获得超过131个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:67万
展开全部
先读入字符串。
open fileName for input as #1
读入文本文件。

然后用 val(a(i))转换成数字型变量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9cfc148
2007-03-21 · TA获得超过1263个赞
知道大有可为答主
回答量:1926
采纳率:100%
帮助的人:875万
展开全部
用INSTR就行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式