回 帖 发 新 帖 刷新版面

主题:请高手指点,谢谢!

Close #1
    Open "config\bl.cfg" For Input As #1     
         On Error GoTo 0
         bl_num = 0
         Line Input #1, tem
         Do While Not EOF(1)
            Line Input #1, tem
            If Len(Trim(tem)) > 5 Then
               tem = Trim(tem)
请问上面代码中If Len(Trim(tem)) > 5 Then这句是什么意思?为什么是5?
config\bl.cfg的内容是
[color=808080]报类         上次时间                     间隔(分)
gps 2009-12-12,03:28:11 0
msg * 0
aws * 0
aws1 * 0
radar1 * 0
radar2 * 0
radar3 * 0
radar4 * 0
radar5 * 0[/color]

谢谢!
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
谢谢二位,请问一江秋水,那为什么不是大于7呢?我这还有一个是大于3的,我不是很明白,谢谢!

回复列表 (共6个回复)

沙发

Trim()去掉字符串左右的空格
Len()返回长度

板凳

从bl.cfg的内容来看,每一行的最小长度=7,这是为了保证读取的数据具有规定的格式,比如说,“msg *”这个数据不符合规定,就会自动去掉。

3 楼


[color=000080][size=6][size=4]谢谢二位,请问一江秋水,那为什么不是大于7呢?我这还有一个是大于3的,我不是很明白,谢谢![/size][/size][/color]

4 楼

还有一段是这样的:
 Close #1
    Open "config\control.cfg" For Input As #1     
         On Error GoTo 0
         control_num = 0
         Line Input #1, tem
         Line Input #1, tem
         Line Input #1, tem

         Do While Not EOF(1)
            Line Input #1, tem
            If Len(Trim(tem)) >= 3 Then
               control(control_num) = Trim(tem)
               control_num = control_num + 1
            End If
         Loop
     Close #1
config\control.cfg文件的内容:
startaa
地址   用户   口令    远程目录  显示文件方式  文件特征码   本地分发目录1  本地分发目录2  文件时区  延迟时间(分)
end
gps 
175.17.10.3   gps  gps   *    ls   Z_*_54511_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30 
172.17.10.3   gps  gps   *    ls   Z_*_53698_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30 
172.17.10.3   gps  gps   *    ls   Z_*_54401_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30 
172.17.10.3   gps  gps   *    ls   Z_*_56778_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30
172.17.10.3   gps  gps   *    ls   Z_*_55299_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30 
172.17.10.3   gps  gps   *    ls   Z_*_56257_(YYYY)(MM)(DD)(HH)*    h:\LIB\SHARE\GPS\   *  GMT  -30  
end
msg
172.17.10.3   getdown   getdown  *  ls  MSG__*(DD)(HH)*.ABJ         d:\down\   *    GMT     -10
end
aws
10.129.9.16   st_txk   st    /DATA/LIB/DSFU/YC/  ls  Z_SURF*(YYYY)(MM)(DD)(HH)*_O_*FTM*.*      E:/test-973/    *   GMT     -20
end
aws1
10.129.9.16   ZLSC   ZL    /vp/shycb/  ls  Z_SURF*(YYYY)(MM)(DD)(HH)*_O_*FTM*.*      F:\data\real\zdz\   *   GMT     -1
end
radar1
10.129.9.21   radzl   rad    /hfld/  ls  Z_RADR_I_Z9551_(YYYY)(MM)(DD)(HH)*_O_DOR_SA_CAP.bin.bz2     F:\data\real\radar\Z9551\  *   GMT     -20
end
请指点,谢谢

5 楼

control_num是计数器,计算符合规定的数据有多少行。
3个“Line Input #1, tem”语句说明要将前面3行数据废弃不用(就是下面3行:)
-------------------------------------
startaa
地址   用户   口令    远程目录  显示文件方式  文件特征码   本地分发目录1  本地分发目录2  文件时区  延迟时间(分)
end
-------------------------------------
control(control_num)是一维数组,用来装载一行符合规定的数据。
“Len(Trim(tem)) >= 3”表示只有大于或等于3个字符的数据才是符合规定的数据,从control.cfg文件的内容来看,都是符合规定的数据,这一句是为了确保,防止意外情况。

6 楼


[color=00FFFF][size=4]哈哈,明白了,多谢一江秋水![em2][/size][/color]

我来回复

您尚未登录,请登录后再回复。点此登录或注册