当前位置:编程学习 > VB >>

小妹有一弱问题求助: 求文本文件中数据个数

录入文本中N个数据后,不知如何确定N是多少,还想知道怎么找出数据中最大值和最小值.注:各数据之间用逗号分离.
小妹初学VB,希望能得到您的帮助!祝节日愉快! --------------------编程问答-------------------- 我觉得一个简便的办法就是len(文本)-len(replace(文本,",",""))+1,也就是用文本长度和文本去掉逗号后的长度求出逗号的个数,加上1应该就是数据的个数了,至于最大值、最小值,可以分解到数组里进行比较,不过我更喜欢插到数据库的表里去直接筛选。 --------------------编程问答-------------------- Dim min
     Open "i:\tt.text" For Input As #1
       Do While Not EOF(1)
       Line Input #1, st
       a = a & st & ","
       Loop
     Close #1
      j = Split(a, ",")
    min = Val(j(0))
    For i = 1 To UBound(j)
            If Val(j(i)) <min Then
                        min = Val(j(i))
           End If
       Next
      Print min
这样做,得出来的最小值是,0,可是数据中没有0
--------------------编程问答-------------------- For i = 0 To UBound(j)-1 --------------------编程问答-------------------- 原因在于你的a = a & st & ","多加了一个逗号,所以得把最后一个值抛掉 --------------------编程问答-------------------- 楼上正解! --------------------编程问答-------------------- 我无话可说。split是干什么用的啊同志们? --------------------编程问答-------------------- '添加 Text1  Command1

Option Explicit
Dim MaxVal&, MinVal&, i&, aa$, s
Private Sub Command1_Click()
   Randomize
   aa = ""
   For i = 0 To 9
      aa = aa & CStr(Int(Rnd * 1000)) & ","
   Next i
   Text1.Text = Mid(aa, 1, Len(aa) - 1)
   s = Split(Text1.Text, ",")
   MinVal = 1000: MaxVal = 0
   For i = 0 To UBound(s)
       MinVal = IIf(Val(s(i)) < MinVal, Val(s(i)), MinVal)
       MaxVal = IIf(Val(s(i)) > MaxVal, Val(s(i)), MaxVal)
   Next i
   MsgBox "最小值:" & CStr(MinVal) & Space(2) & "最大值:" & CStr(MaxVal)
End Sub

补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,