[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 【已解决】VBS:若读入数据产生首尾颠倒的改变,VBS代码如何进行相应修改

本帖最后由 思想之翼 于 2023-3-2 21:43 编辑

原题:http://www.bathome.net/viewthread.php?tid=23404&highlight=
问题:
下列VBS代码读入a.txt的数据,由于记录方式变更,产生首尾颠倒的变化,欲得到相同的运算结果,VBS代码该如何相应修改?恳望得到指点。
示例:
【a.txt 原始记录的数据】
9
0
X
Y
Z
9
0
【a.txt 首尾颠倒后的数据】
0
9
Z
Y
X
0
9
  1. Set fso = CreateObject("Scripting.FileSystemObject")
  2. set file = fso.OpenTextFile("a.txt")
  3. Do Until file.AtEndOfStream
  4.    strLine = file.ReadLine
  5.    If strLine <> "" Then
  6.       ReDim PreServe ar(n)
  7.       strIn = strIn & "$" & strLine & " "
  8.       ar(n) = strIn : n = n + 1
  9.    End If
  10. Loop
  11. For i = CLng(UBound(ar)/2) to 0 step -1
  12.    ar1 = Split(strIn,ar(i))
  13.    If UBound(ar1) > 1 Then
  14.       For j = 1 to UBound(ar1) - 1
  15.          WriteToFile Split(ar1(j)),Split(ar(i))
  16.       Next
  17.       Exit For
  18.    End If
  19. Next
  20. MsgBox "OK"
  21. Sub WriteToFile(ar2,ar3)
  22.    If UBound(ar2) >= 1 Then
  23.       strOut = Mid(ar2(UBound(ar2)-1),2)
  24.    Else
  25.       strOut = Mid(ar3(UBound(ar3)-1),2)
  26.    End If
  27.    fso.OpenTextFile("b.txt",8,True).WriteLine strOut
  28. End Sub
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 2# jyswjjgdwtdtj
感谢!没能解决问题

TOP

本帖最后由 思想之翼 于 2023-3-2 10:39 编辑

回复 4# jyswjjgdwtdtj
理解您的想法。文本个数多,折腾数据费时。

TOP

本帖最后由 思想之翼 于 2023-3-13 16:53 编辑

回复 14# czjt1234
非常感谢!代码运行结果正确。
VBScript 代码运行速度上不去,转换为 Javascript 或其他脚本语言,是否明显加速?恳望指点!

TOP

返回列表