vbs文件搜索目录中的扩展名

时间:2016-02-23 20:46:36

标签: file vbscript

我试图在VB中编写这段代码,(我很新) 我想让代码通过一个文件夹/目录,然后选择所有“.txt”文件,就像for循环一样。然后可以使用MsgBox(“txt filename”)列出这些文本文件。这是我到目前为止所得到的:

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)谢谢! (上面的代码大部分是我在互联网上发现的代码)。

1 个答案:

答案 0 :(得分:2)

你应该修改这一行;如果您使用UCase

If UCase(objFSO.GetExtensionName(objFile.name)) = ".txt"

If UCase(objFSO.GetExtensionName(objFile)) = "TXT"

或者如果您使用LCase

If LCase(objFSO.GetExtensionName(objFile)) = "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 LCase(objFSO.GetExtensionName(objFile)) = "txt" Then
        Wscript.Echo objFile.Name
    End If
Next

<强> GetExtensionName Method