步驟如下:
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的武夷山網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
窗體上添加2個(gè)列表框,一個(gè)按鈕:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim MyDir As String = "C:\123"
'搜索并顯示子文件夾
ListBox1.Items.Clear()
For Each MySubDir As String In System.IO.Directory.GetDirectories(MyDir)
ListBox1.Items.Add(MySubDir)
Next
'搜索并顯示文件
ListBox2.Items.Clear()
For Each MyFile As String In System.IO.Directory.GetFiles(MyDir)
ListBox2.Items.Add(MyFile)
Next
End Sub
End Class
解壓密碼:1299
假設(shè)路徑為C:\abc
代碼:
Public?Class?Form1
Private?Sub?Form1_Load(sender?As?Object,?e?As?EventArgs)?Handles?MyBase.Load
Dim?Files?As?ObjectModel.ReadOnlyCollection(Of?String)?=?My.Computer.FileSystem.GetFiles("C:\abc")
Dim?FileSize?As?Long,?FileName?As?String?=?Nothing
Dim?oFileSize?As?Long
For?Each?File?As?String?In?Files
oFileSize?=?My.Computer.FileSystem.GetFileInfo(File).Length
If?oFileSize??FileSize?Then
FileSize?=?oFileSize
FileName?=?File
End?If
Next
Dim?ListN?As?ListViewItem?=?New?ListViewItem(My.Computer.FileSystem.GetName(FileName))
ListN.SubItems.Add(oFileSize??"?byte")
ListN.SubItems.Add(My.Computer.FileSystem.GetFileInfo(FileName).Extension??"?文件")
ListN.SubItems.Add(FileName)
ListView1.Items.Add(ListN)
End?Sub
End?Class
詳見源代碼?。?/p>
思路:
1,使用ListBox1控件來存放搜索到的文件名,然后ListBox1.SelectedItem就可以返回選中項(xiàng)的文本;
2,利用獲得的選中項(xiàng)文本(即文件與路徑),使用打開文本文件的方法,讀取內(nèi)容顯示在文本框里。
vb.net編程查找搜索指定目錄下面的所有文件和其子目錄下的文件,方法如下:
''=============================================
''名稱:?FindPath
''作用:?查找搜索指定目錄下面的所有文件和其子目錄下的文件
''參數(shù):strPath?要查找的目錄,
''strFiles?用于存查找結(jié)果的緩沖區(qū),String?類型的動態(tài)數(shù)組,調(diào)用時(shí)事先初始化,?如Redim?strFiles(0)
''FileCount?用于返回文件個(gè)數(shù)
''=============================================
Public?Sub?FindPath(ByVal?strPath?As?String,?strFiles()?As?String,?FileCount?As?Long)
Dim?strDirs()???As?String
Dim?strResult???As?String
Dim?FileLimit???As?Long
Dim?dirLimit????As?Long
Dim?dirCount????As?Long
Dim?I???????????As?Long
FileLimit?=?UBound(strFiles)?+?1
dirLimit?=?0
If?Right$(strPath,?1)??"/"?Then?strPath?=?strPath??"/"
strResult?=?Dir(strPath,?vbDirectory?+?vbSystem?+?vbReadOnly?+?vbHidden?+?vbNormal?+?vbArchive)
Do?While?Len(strResult)??0
If?strResult??"."?And?strResult??".."?Then
If?(GetAttr(strPath??strResult)?And?vbDirectory)??vbDirectory?Then
If?FileCount?=?FileLimit?Then
ReDim?Preserve?strFiles(FileLimit?+?10)
FileLimit?=?FileLimit?+?10
End?If
strFiles(FileCount)?=?strPath??strResult
FileCount?=?FileCount?+?1
Else
If?dirCount?=?dirLimit?Then
ReDim?Preserve?strDirs(dirLimit?+?10)
dirLimit?=?dirLimit?+?10
End?If
strDirs(dirCount)?=?strPath??strResult
dirCount?=?dirCount?+?1
End?If
End?If
strResult?=?Dir(,?vbDirectory?+?vbSystem?+?vbReadOnly?+?vbHidden?+?vbNormal?+?vbArchive)
Loop
For?I?=?0?To?dirCount?-?1
Call?FindPath(strDirs(I),?strFiles,?FileCount)
Next?I
End?Sub