【发布时间】:2016-02-23 20:46:36
【问题描述】:
我正在尝试在 VB 中编写此代码,(我很新) 我想让代码通过一个文件夹/目录,并选择所有“.txt”文件,类似于 for 循环。然后可以使用 MsgBox(“txt 文件名”)列出这些文本文件。这是我到目前为止所得到的:
Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "C:\Users\Desktop\folder"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
For Each objFile in colFiles
If UCase(objFSO.GetExtensionName(objFile.name)) = ".txt" Then
Wscript.Echo objFile.Name
Next
它似乎没有选择一个名为“name.txt”的 txt 文件。任何帮助将不胜感激。
ps: 请忽略拼写错误和我糟糕的格式(我是stackoverflow的新手)谢谢! (上面的代码也大多是我在网上找到的代码)
【问题讨论】:
-
你告诉它比较TXT和txt。这就是UCase的意思。
If LCase(objFSO.GetExtensionName(objFile.name)) = LCase(".txt") Then。我对第二个 LCase 有点迂腐,但这就是如何比较 vbscript 中的文本是相同大小写双方。