详解VB.NET ListBox加载目录与文件列表

开发 后端
这里演示了VB.NET ListBox加载目录与文件列表的一个案例分析,代码详细,正在为这个问题烦恼的朋友可以看看代码,复杂跑在机器看看运行结构。

VB.NET ListBox加载还是比较常用的,于是我研究了一下VB.NET ListBox加载目录与文件列表 ,在这里拿出来和大家分享一下,希望对大家有用。文本文件方式是以行为单位进行读取的基本单位,主要应用的方法和函数有Open,Close,Line Input,FreeFile,EOF等。下面先简述其功能然后结合代码示例进行说明。Open:顾名思义,它的作用是打开文件,换而言之打开某个文件就是获得某个的控制权,一般情况下当文件处于打开状态时只有打开者才能对它进行操作。打开文件时要指定一个整数作为文件号,以后的操作都是针对这个代号进行的,而不是针对文件名。文件号也叫句柄,在程序中一个文件号只能指向一个文件,不能出现两个文件同时具有相同句柄的情况。Close:关闭文件,即释放文件的控制权。

#T#Line Input:以行为单位取得文件内容,以行为单位是指从当前位置开始到下一个换行符为止的内容。换行符是Chr(13) & Chr(10)两个字节组成,VB中已定义了常量vbCrLf,可直接使用。要注意的是Line Input读取一行时会把行尾的换行符去掉,因此我们在读取每行内容时要记得补上换行符才能保持得到的内容与文件一致。
Freefile:得到空闲的文件号,用这个函数取得文件号可以避免文件号的冲突。

VB.NET ListBox加载代码:

Option Explicit  
 
'API声明  
Private Declare Function SendMessageA Lib "user32" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long  
 
'常量  
Private Const LB_DIR = &H18D  
Private Const DDL_DRIVES = &H4000 '磁盘  
Private Const DDL_DIRECTORY = &H10 '文件夹  
Private Const DDL_ARCHIVE = &H20  
Private Const DDL_EXCLUSIVE = &H8000&  
Private Const DDL_READWRITE = &H0 '读写  
Private Const DDL_READONLY = &H1 '只读  
Private Const DDL_HIDDEN = &H2 '隐藏  
Private Const DDL_SYSTEM = &H4 '系统  
Private Const DDL_POSTMSGS = &H2000  
 
'-------------------------------------------------  
'功能:用ListBox控件加载文件列表  
'参数:lst - 指定的ListBox控件  
' sPath - 指定目录  
'-------------------------------------------------  
Private Sub MyListBoxLoadFolder(ByRef lst As ListBox, _  
ByVal sPath As String, _  
Optional bShowFolders As Boolean = True)  
On Error Resume Next  
Dim lngReturn As Long  
Dim lngFlags As Long  
 
If bShowFolders = False Then  
lngFlags = DDL_EXCLUSIVE Or DDL_ARCHIVE Or DDL_SYSTEM Or DDL_HIDDEN  
Else  
lngFlags = DDL_EXCLUSIVE Or DDL_ARCHIVE Or DDL_SYSTEM Or DDL_HIDDEN Or DDL_DIRECTORY  
End If  
 
'清空列表  
lst.Clear  
'开始装载文件列表  
lngReturn = SendMessageA(lst.hWnd, LB_DIR, lngFlags, ByVal sPath)  
End Sub 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
责任编辑:田树 来源: 博客
相关推荐

2009-10-23 13:10:14

VB.NET List

2010-01-21 17:58:40

VB.NET List

2009-10-29 15:28:38

VB.NET文件操作

2010-01-12 18:35:43

VB.NET Stru

2010-01-21 17:34:48

VB.NET Bool

2009-10-20 17:38:54

VB.NET Comp

2011-05-20 16:56:11

VB.NETGDI

2010-01-22 18:08:18

VB.NET与GDI结

2010-01-13 09:45:53

VB.NET Arra

2009-10-12 15:44:26

VB.NET动态编码技

2010-01-13 10:15:19

VB.NET Stri

2010-01-12 18:05:38

VB.NET对象

2010-01-08 14:56:18

VB.NET类定义

2010-01-07 15:57:02

VB.NET ForEach

2010-01-12 11:37:34

VB.NET读取图像

2010-01-11 17:16:48

VB.NET快捷键

2010-01-19 10:12:39

VB.NET Butt

2010-01-21 10:48:18

VB.NET扩展方法

2010-01-18 18:14:37

VB.NET语言特点

2009-10-13 10:21:58

VB.NET实现Web
点赞
收藏

51CTO技术栈公众号