首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VB.NET 文件操作类和示例程序。textbox和listbox联动搜索

VB.NET 文件操作类和示例程序。textbox和listbox联动搜索

作者头像
一线编程
发布2019-07-22 14:42:40
1.1K0
发布2019-07-22 14:42:40
举报
文章被收录于专栏:办公魔盒办公魔盒

文件操作类包含以下内容:

1、通过在textbox输入关键字,搜索文件显示在listbox中

2、通过传入数组通过textbox搜索数组显示listbox中

3、获取文件夹中文件的个数

4、获取文件夹中文件名(含文件格式)

5、获取文件夹中文件名(不含扩展)

6、从文件路径中获取文件名含扩展

7、从路径中获取文件路径

8、从路径中获取文件名(不含扩展)

9、从路径中获取扩展名

Public Class cls_file

''' <summary>

''' 通过在textbox输入关键字,搜索文件显示在listbox中

''' </summary>

''' <param name="文件路径">必填:文件路径</param>

''' <param name="txbox">必填:textbox控件</param>

''' <param name="lstbox">必填:listbox控件</param>

''' <param name="gs">选填:文件格式(默认PDF)</param>

''' <returns></returns>

''' <remarks></remarks>

'''

Public Function tboxseachlistbox(ByVal 文件路径 As String, ByVal txbox As TextBox, ByVal lstbox As Object, Optional ByVal gs As String = "*.pdf")

Dim arr(获取文件个数(文件路径))

Dim i As Integer = 0

For Each filename As String In IO.Directory.GetFiles(文件路径, gs)

Dim file As IO.FileInfo = New IO.FileInfo(filename)

arr(i) = Split(file.Name, ".")(0) '含扩展名改为 “file.Name”

i += 1

Next

If Len(txbox.Text) > 0 Then

Dim brr() As String = Filter(arr, UCase(txbox.Text)) '匹配搜索文件 (精确搜索:Array.IndexOf(arr, UCase(txbox.Text)))

lstbox.DataSource = brr

Else

lstbox.DataSource = arr

End If

Return 1

End Function

'---------------------------------------------------------------------------------

'类扩展

''' <summary>

''' 传入数组通过textbox搜索数组显示listbox中

''' </summary>

''' <param name="txbox">必填:textbox控件</param>

''' <param name="lstbox">必填:listbox控件</param>

''' <param name="arr">必填:数组</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function txtseschlist(ByVal txbox As TextBox, ByVal lstbox As Object, ByVal arr() As Array)

If Len(txbox.Text) > 0 Then

Dim brr() As String = Filter(arr, UCase(txbox.Text)) '匹配搜索文件 (精确搜索:Array.IndexOf(arr, UCase(txbox.Text)))

lstbox.DataSource = brr

Else

lstbox.DataSource = arr

End If

Return 1

End Function

'-------------------------------------------------------------------------

'-------------------------------------------------------------------------

'对文件操作

''' <summary>

''' 获取文件个数

''' </summary>

''' <param name="fpath">必填:文件路径</param>

''' <param name="gs">选填:文件格式(默认PDF,可自定义格式)</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 获取文件个数(ByVal fpath As String, Optional ByVal gs As String = "*.pdf") As Integer

Dim 个数 As Integer = 1

For Each filename As String In IO.Directory.GetFiles(fpath, gs)

个数 += 1

Next

获取文件个数 = 个数 - 2

Return 获取文件个数

End Function

''' <summary>

''' 获取文件(含文件格式)

''' </summary>

''' <param name="fpath">必填:文件路径</param>

''' <param name="gs">选填:文件格式(默认PDF)</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从文件夹获取文件含扩展(ByVal fpath As String, Optional ByVal gs As String = "*.pdf") As Array

Dim arr(获取文件个数(fpath))

Dim i As Integer = 0

For Each filename As String In IO.Directory.GetFiles(fpath, gs)

Dim file As IO.FileInfo = New IO.FileInfo(filename)

arr(i) = file.Name

i += 1

Next

从文件夹获取文件含扩展 = arr

Return 从文件夹获取文件含扩展

End Function

''' <summary>

''' 从文件夹获取文件(不含扩展)

''' </summary>

''' <param name="fpath">必填:文件路径</param>

''' <param name="gs">选填:文格式</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从文件夹获取文件(ByVal fpath As String, Optional ByVal gs As String = "*.pdf") As Array

Dim arr(获取文件个数(fpath))

Dim i As Integer = 0

For Each filename As String In IO.Directory.GetFiles(fpath, gs)

Dim file As IO.FileInfo = New IO.FileInfo(filename)

arr(i) = Split(file.Name, ".")(0)

i += 1

Next

从文件夹获取文件 = arr

Return 从文件夹获取文件

End Function

'------------------------------------------------------------------------------------

'------------------------------------------------------------------------------------

'------------------------------------------------------------------------------------

'对文件路径的操作

''' <summary>

''' 从路径中获取文件名含扩展

''' </summary>

''' <param name="文件路径">必填:文件路径</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从路径中获取文件名含扩展(ByVal 文件路径 As String) As String

On Error Resume Next

Dim i As Integer, J As Integer

i = Len(文件路径)

J = InStrRev(文件路径, "\")

从路径中获取文件名含扩展 = Mid(文件路径, J + 1, i)

End Function

''' <summary>

''' 从路径中获取文件路径

''' </summary>

''' <param name="文件路径">必填:文件路径</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从路径中获取文件路径(ByVal 文件路径 As String) As String

On Error Resume Next

Dim J As Integer

J = InStrRev(文件路径, "\")

从路径中获取文件路径 = Mid(文件路径, 1, J)

End Function

''' <summary>

''' 从路径中获取文件名(不含扩展)

''' </summary>

''' <param name="文件路径">必填:文件路径</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从路径中获取文件名(ByVal 文件路径 As String) As String

On Error Resume Next

Dim i As Integer, J As Integer, k As Integer

i = Len(文件路径)

J = InStrRev(文件路径, "\")

k = InStrRev(文件路径, ".")

If k = 0 Then

从路径中获取文件名 = Mid(文件路径, J + 1, i - J)

Else

从路径中获取文件名 = Mid(文件路径, J + 1, k - J - 1)

End If

End Function

''' <summary>

''' 从路径中获取扩展名

''' </summary>

''' <param name="文件路径">必填:文件路径</param>

''' <returns></returns>

''' <remarks></remarks>

Public Function 从路径中获取扩展名(ByVal 文件路径 As String) As String

On Error Resume Next

Dim i As Integer, J As Integer

i = Len(文件路径)

J = InStrRev(文件路径, ".")

If J = 0 Then

从路径中获取扩展名 = ".pdf"

Else

从路径中获取扩展名 = Mid(文件路径, J, i)

End If

End Function

End Class

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 办公魔盒 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档