首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用目录内容填充列表框,但仅接受某些扩展名

使用目录内容填充列表框,但仅接受某些扩展名
EN

Stack Overflow用户
提问于 2013-08-16 20:55:09
回答 1查看 13.6K关注 0票数 2

所以,基本上我把一个文件夹拖到表单上,一个列表框就会填充里面文件的路径。我已经设法使列表框只接受.MP3路径,但是如何添加更多接受的扩展名呢?

代码语言:javascript
代码运行次数:0
运行
复制
 Private Sub Form1_DragDrop(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragDrop
            Dim files() As String = e.Data.GetData(DataFormats.FileDrop)
            For Each path In files

           If Directory.Exists(path) Then
                    'Add the contents of the folder to Listbox1
                    ListBox1.Items.AddRange(IO.Directory.GetFiles(path, "*.mp3*"))

正如您在上面的最后一行中所看到的,文件夹中具有.mp3扩展名的路径被接受。如何添加更多可接受的扩展名,如.avi、.mp4等?

我试过ListBox1.Items.AddRange(IO.Directory.GetFiles(path, "*.mp3*" + "*.mp4*"))

我也尝试过ListBox1.Items.AddRange(IO.Directory.GetFiles(path, "*.mp3*" , "*.mp4*"))

不走运!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-16 21:10:47

您应该创建一个for循环,测试您的扩展,然后添加或不添加...

就像这样;

代码语言:javascript
代码运行次数:0
运行
复制
    Dim AllowedExtension As String = "mp3 mp4"
    For Each file As String In IO.Directory.GetFiles("c:\", "*.*")
        If AllowedExtension.Contains(IO.Path.GetExtension(file).ToLower) Then
            listbox1.items.add(file)
        End If
    Next

或者更脏的;

代码语言:javascript
代码运行次数:0
运行
复制
IO.Directory.GetFiles(path, "*.mp*")

或者做两次;

添加

代码语言:javascript
代码运行次数:0
运行
复制
     ListBox1.Items.AddRange(IO.Directory.GetFiles(path, "*.mp3*"))

代码语言:javascript
代码运行次数:0
运行
复制
     ListBox1.Items.AddRange(IO.Directory.GetFiles(path, "*.mp4*"))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18273850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档