Public Class frmChooseDBase
Public sr As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
sr = OpenFileDialog1.FileName
Me.Hide()
FrmMain.Show()
End If
End Sub
End Class
程序是在文件中保存的,因此我们常常需要使用到目录(文件夹)来组织文件,在VB.NET中有几个重要的类用于目录的操作。
1.Directory
这个类是一个静态类,它可以不使用new方法产生而直接使用,这个类拥有几个重要的方法可以建立,删除,判断目录。查找目录内的子目录和文件等。
createDirectory ()创建一个指定的目录
exists判断一个目录是否存在
getParent取得目前目录的父目录
getCurrentDirectory获取当前目录
使用一个递归的方法获得一个文件夹内的所有文件的方法:
Private Sub populate(ByVal direvalue As String, ByVal parentnode As TreeNode)
Try
Dim dreArray As String() = Directory.GetDirectories(direvalue)
If dreArray.Length 0 Then
Dim curDire As String
For Each curDire In dreArray
Dim myNode As TreeNode = New TreeNode(curDire)
parentnode.Nodes.Add(myNode)
populate(curDire, myNode)
Next
End If
Catch ex As Exception
parentnode.Nodes.Add("no nodes")
End Try
End Sub
第一个使用的语句:
populate("c:\", TreeView1.Nodes(0))
第一个使用的语句:
populate("c:\", TreeView1.Nodes(0))
2.DirectoryInfo类
这个类可以获得单个目录的相关信息。
3.path类
path类是用于操作目录路径的,这也是一个静态类。它可以获取诸如文件名,文件扩展名等信息。
getDirectoryName返回路径目录名
getExtension获得路径的文件扩展名
getFileName返回文件的文件名和扩展名
4.file类和fileinfo类
静态类,执行通用的文件复制,移动和删除任务。
5.读写文件的类
StreamWriter/StreamReader
6.读写二进制的类
BinaryWriter/BinaryWriter
例:读入获取文件夹下所有文件
Protected Sub btnCreate_Click(sender As Object, e As EventArgs) Handles btnCreate.Click
'LoadThreadMainProc()
Dim customerFilePpath = Path.Combine(lblFirstCustomerPath.Text, ddlCustomer.SelectedValue)
Dim manualFilePath = Path.Combine(lblFirstManualPath.Text, ddlManual.SelectedValue)
Dim dataList As New List(Of String)
Dim theFolderas As DirectoryInfo = New DirectoryInfo(manualFilePath)
Dim files = theFolderas.GetFiles()
For Each file As FileInfo In files
Using sr As New StreamReader(file.FullName, System.Text.Encoding.Default)
While (sr.Peek() >= 0)
' ファイルを 1 行ずつ読み込む
Dim stBuffer As String = sr.ReadLine()
' 読み込んだものを追加で格納する
dataList.Add(stBuffer)
End While
End Using
Next
End Sub