|
pzf2008
新手上路
积分 16
发帖 13
注册 2008-12-8
状态 离线
|
『楼 主』:
vbs代码运行出错,提示缺少“)”,如何解决?
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("D:\Download\temp\11.txt")
Const ForAppending = 8
Set objTextFile1 = objFSO.OpenTextFile ("D:\Download\temp\11.txt", ForAppending, True)
Public Function FormatIP(ByVal sIP As String) As String
Dim arr() As String
Dim i As Integer
arr = Split(sIP, ".")
For i = 0 To ubound(arr)
arr(i) = Format(arr(i), "000")
Next
FormatIP = Join(arr, ".")
End Function
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile2 = objFSO.OpenTextFile ("D:\Download\temp\temp.txt", ForReading)
Do Until objTextFile2.AtEndOfStream
strComputer = objTextFile2.ReadLine
objTextFile1.WriteLine(FormatIP(strComputer))
Loop
objTextFile2.Close
objTextFile1.Close
以上vbs代码运行红色代码行出错,提示缺少“)”,如何解决?
|
|
2009-12-21 17:22 |
|
|
qinchun36
高级用户
据说是李先生
积分 609
发帖 400
注册 2008-4-23
状态 离线
|
『第
2 楼』:
兄弟,vbs 不是 vb ,请你搞清楚了,vbs 里面没有数据类型也没有函数类型,也没有Format这种偷奸躲懒的函数,把你的函数改成
Function FormatIP(sIP)
Dim arr, i, temp, j
arr = Split(sIP, ".")
For i = 0 To ubound(arr)
temp = ""
n = 3 - Len(arr(i))
For j = 1 To n
temp = temp & "0"
Next
arr(i) = temp & arr(i)
Next
FormatIP = Join(arr, ".")
End Function 下面是VBS官方参考中的一小段话:
Visual Basic Scripting Edition
未包含在 VBScript 中的 Visual Basic for Applications 特性
下表列出未包含在 VBScript 中的 Visual Basic for Applications 特性。
类别 特性/关键字
数组处理 Option Base
声明数组下界 <> 0
集合 Add, Count, Item, Remove
使用 ! 字符访问集合
条件编译 #Const
#If...Then...#Else
控制流程 DoEvents
GoSub...Return, GoTo
On Error GoTo
On...GoSub, On...GoTo
Line numbers, Line labels
转换 CVar, CVDate
Str, Val
数据类型 除 Variant 外的所有固有数据类型
Type...End Type
日期/时间 Date 语句、Time 语句
DDE LinkExecute, LinkPoke, LinkRequest, LinkSend
调试 Debug.Print
End, Stop
声明 Declare (声明 DLL )
Optional
ParamArray
Static
错误处理 Erl
Error ... ... ...
|
┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛ |
|
2009-12-21 18:16 |
|
|