【问题标题】:Vbscript summary of numbers in all textfiles in a folder文件夹中所有文本文件中数字的vbscript摘要
【发布时间】:2014-04-09 08:30:32
【问题描述】:

我试图获取文件夹中现有 x 个文本文件中的数字总和。 到目前为止,我可以读取 2 个文本文件,但它们不会相加,脚本 add 结果中的数字 1,1+1,2 = 1,11,2 而不是 = 2,3 就像我想要的那样,我知道存在整数和不匹配的东西。但我发现唯一有效的代码是没有文本文件作为变量。一旦我需要阅读textilfes,我就会卡住。请指教。

Option Explicit
Dim objFSO
Dim objFile1
Dim arrData1
Dim objFile2
Dim arrData2
Dim objFile3
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile1 = objFSO.OpenTextFile("..\testfolder\1.txt")
arrData1 = (objFile1.ReadLine)
objFile1.Close

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile2 = objFSO.OpenTextFile("..\testfolder\2.txt")
arrData2 = (objFile2.ReadLine)
objFile2.Close

Set objFile3 = objFSO.CreateTextFile("..\testfolder\sum.txt")
objFile3.WriteLine arrData1 + arrData2
objFile3.Close

【问题讨论】:

    标签: variables vbscript integer summary


    【解决方案1】:

    从文件中读取会给你字符串;要在计算中使用数字字符串,您必须将它们转换为数字:

    >> s1 = "47"
    >> s2 = "11"
    >> WScript.Echo s1 + s2
    >> WScript.Echo CLng(s1) + CLng(s2)
    >>
    4711
    58
    

    (您应该制定使用多个文件的策略。)

    【讨论】:

    • @micwar 您可能想要验证您所阅读的内容可以转换为 Long,否则 VBScript 会向您抛出一个不错的小错误消息。使用IsNumeric() 函数或RegExp
    猜你喜欢
    • 2011-05-11
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2010-12-18
    • 2018-10-27
    • 2016-09-18
    相关资源
    最近更新 更多