| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1510 人关注过本帖, 1 人收藏
标题:[求助]怎么读取txt文件并进行计算?
只看楼主 加入收藏
ouzhiguang
Rank: 1
来 自:湖南长沙
等 级:新手上路
威 望:1
帖 子:240
专家分:0
注 册:2007-5-18
收藏
得分:0 
text1与text2 内容一样
text3 中的数小与100或大于800时就会出错 text4中没有显示
2007-06-07 16:53
linvv
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2007-6-4
收藏
得分:0 
text1和2中的字符串有换行吗?

txet4用来干嘛?如果我要提取指定的第5行第4个数值显示到text4要改哪里?
2007-06-07 17:27
linvv
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2007-6-4
收藏
得分:0 

又看了很久,很多看不懂,请ouzhiguang兄再帮下忙,注释一下吧.

可以计算了,但不知道你是提取哪几个数出来计算的




Private Sub Command1_Click()
Dim strfilename As String
Dim strline As String
Dim filenum As String
CommonDialog1.Filter = "所有文件(*.*)|*.*"
CommonDialog1.FilterIndex = 1
CommonDialog1.ShowOpen
strfilename = CommonDialog1.FileName
Text1.Text = ""
filenum = FreeFile
If strfilename <> "" Then
Open strfilename For Input As filenum
Do While Not EOF(filenum)
Line Input #filenum, strline

Text1.Text = Text1.Text + strline + Chr(13) + Chr(10)
Loop
Close filenum
End If
'本过程为读入文件的数据 在text1中显示
End Sub


Private Sub Command2_Click()


Dim a(1000) As String


strfilename = CommonDialog1.FileName
Text1.Text = ""
filenum = FreeFile '下一个文件?
If strfilename <> "" Then '如果文件名不为空就写入filenum
Open strfilename For Input As filenum '打开文件 (这是可以读多个文件的吗?)
Do While Not EOF(filenum)
Line Input #filenum, strline
n = LTrim(strline)

'以上为把读入的文件数据连成一串,存给n?


s1: '行号
For i = 1 To Len(n)

If Mid(n, i, 1) = " " Then '循环一次,如果这次的字符是空格,k就加1
k = k + 1

a(k) = Mid(n, 1, i - 1) 'a(k)就等于空格前的字符串,(这样是不是每个数值存给各个a(k)了)


n = LTrim(Mid(n, i))

GoTo s1
End If

Next i ''以上看不懂,请帮注释一下

For j = 1 To Len(RTrim(strline))
If Mid(RTrim(strline), Len(RTrim(strline)) - j, 1) = " " Then
k = k + 1
a(k) = Mid(RTrim(strline), Len(RTrim(strline)) - j + 1, Len(RTrim(strline)))

Exit For
End If
Next j


Text1.Text = Text1.Text + strline + Chr(13) + Chr(10)
Loop
Close filenum
End If
For i = 1 To k
Text2.Text = Text2.Text & " " & Trim(a(i))
If i Mod 6 = 0 Then
Text2.Text = Text2.Text & Chr(13) & Chr(10)
End If
Next i

'以下为预防忘记输入要比较的值
If Text3.Text = "" Then ''如果text3=""
MsgBox "请输入要比较的值!" '提示输入
Text3.SetFocus '将焦点移动到text3
Exit Sub
End If


Dim o, v As Single
Dim m As Single
m = Val(Text3.Text) 'k,m都等于比较值
k = Val(Text3.Text)
For i = 1 To k - 5 Step 6
If Val(a(i)) > m Then ' 如果每行的第一个数大于比较值就停止
Exit For
End If
Next i
If i = 1 Then Exit Sub

v = (Val(a(i + 1)) - Val(a(i - 6 + 1))) / (Val(a(i + 3)) - Val(a(i - 6 + 3)))
o = (Val(a(i - 1)) - Val(a(i + 5))) * m

Text4.Text = Str(v) & Str(o)
End Sub

2007-06-07 18:10
快速回复:[求助]怎么读取txt文件并进行计算?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016490 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved