备案 控制台
学习
实践
活动
专区
工具
TVP
写文章
专栏首页 办公魔盒 VB.NET 获取父子目录的文件名
1 0

海报分享

VB.NET 获取父子目录的文件名

获取父子目录中的文件名,那么获取完之后我们能拿他们干点什么呢?这就见仁见智了,你可以把获取的文件名编一个规则重命名旧的文件、移动文件、复制文件、删除指定文件等操作,这就看你们的想象力和应用了!

引用IO
Imports System.IO

获取父子文件名类模块代码

Public Class Cls_file
定义文件名列表
    ''' <summary>
    ''' 定义文件名列表
    ''' </summary>
    Private Shared ReadOnly F_List As New List(Of FileInfo)
获取指路径文件名(含子目录)函数
    ''' <summary>
    ''' 获取指路径文件名(含子目录)
    ''' </summary>
    ''' <param name="Path">文件夹路径</param>
    ''' <param name="EXT">文件扩展名</param>
    ''' <returns></returns>
    Public Shared Function Get_AllFlist(ByVal Path As String, ByVal EXT As String) As List(Of FileInfo)
            If Not String.IsNullOrWhiteSpace(Path) Then  '判断文件夹路径是null或者是空
                If Directory.Exists(Path) Then  '判断文件夹是否存在,不存在则创建一个
                    Get_File_ALL(Path, EXT)  '获取所有文件列表
                    Directory.CreateDirectory(Path)  '创建一个文件夹
                End If
                MsgBox("文件路径为空!", MsgBoxStyle.Critical, "警告")
            End If
            Return F_List  '返回文件列表
        Catch ex As Exception
            Return Nothing
            MsgBox("错误:" & ex.Message, MsgBoxStyle.Critical, "警告")
        End Try
    End Function
获取指路径文件名(含子目录)过程
    ''' <summary>
    ''' 获取指路径文件名(含子目录)
    ''' </summary>
    ''' <param name="Path">文件夹路径</param>
    ''' <param name="EXT">文件扩展名(.txt)(.pdf)(.xls)等</param>
    Private Shared Sub Get_File_ALL(ByVal Path As String, ByVal EXT As String)
            Dim Sub_Dir As String() = Directory.GetDirectories(Path) '获取子目录路径
            Dim P_File_INFO As New DirectoryInfo(Path)
            Dim F_File As FileInfo() = P_File_INFO.GetFiles()  '获取父目录文件信息
            If F_File.Length <> 0 OrElse Sub_Dir.Length <> 0 Then
                For Each Flist As FileInfo In F_File  ''获取父目录文件名
                    If EXT.ToLower = Flist.Extension.ToLower Then  '取指定格式文件名
                        F_List.Add(Flist)  ''文件名保存到文件名列表
                    End If
                For Each Sub_Flist As String In Sub_Dir '获取子目录文件路径
                    Get_File_ALL(Sub_Flist, EXT)  '复用获取子目录中的文件名
            End If
        Catch ex As Exception
            MsgBox("错误:" & ex.Message, MsgBoxStyle.Critical, "警告")
        End Try
    End Sub

类模块结束

End Class

使用方法

Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        FolderBrowserDialog1.RootFolder = Environment.SpecialFolder.Desktop
        FolderBrowserDialog1.ShowNewFolderButton = True
        Dim f_ls As New List(Of IO.FileInfo)
        If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
            f_ls = Cls_file.Get_AllFlist(FolderBrowserDialog1.SelectedPath, ".mp4")
        End If
        Dim t As New Text.StringBuilder
        For Each x In f_ls
            t.Append(x.ToString).Append(vbCrLf)
        RichTextBox1.Text = t.ToString
    End Sub
End Class

今天教程到此结束啦!

文章分享自微信公众号:
办公魔盒

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

作者: VB小源码
原始发表时间: 2019-11-24
如有侵权,请联系 cloudcommunity@tencent.com 删除。