利用Visual Basic常用控件操作文件
(一)显示文件
因为不同文件的存储格式的差异,所以,只有用适当的方法才能正确的显示不同的文件。表现在表层,也就是不同的文件后缀名不同,而且不同的应用软件只能读取和显示某种或几种不同格式的文件。如:以.DOC为后缀名的文件,用WORD就可以打开,但是用记事本就无法正确显示.所以,VB中就给我们提供了不同的控件来显示不同的文件。
在此我们以text控件为例子,看一看用它是怎样显示文件的。
Private Sub mnuopen_Click() ’当点击菜单中的打开文件时执行
Dim filepath as Sting
Dim strLine As String
'在未选择文件时,text.text为空字符,,不显示任何内容
text1.text = “”
CommonDialog1.FileName = ""
'下面语句设置文件过滤方式,可显示扩展名为txt文件
CommonDialog1.Filter = "(*.txt)|*.txt"
'建立打开方式的通用对话框,也可使用commondialog1.showopen
CommonDialog1.Action = 1
filepath=CommonDialog1.FileName ‘得到选择的文件
Open filepath For Input As #1 打开选择的文件
Do Until EOF(1) ‘显示打开的文件
Line Input #1, strLine
text1.Text = text1.Text + strLine + Chr(13) + Chr(10)
Loop
Close #1 ‘关闭打开的文件
End Sub
除了vb自带的控件外,我们还可以使用fileSystemObject文件系统对象,file对象,以及files集合。下面我们给出两个例子,更多更详细的内容请参考前面目录部分。
下面代码举例说明了如何获得一个file对象,以及如何察看它的一个属性。
Sub ShowFileInfo(filespec)
Dim fs, f, s
Set fs = CreateObject("scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
s = f.DateCreated
MsgBox s
End Sub
对于如何获得一个files集合,以及如何用For Each……Next语句来访问这个集合中的每个file,我们可以参考下面的例子:
Sub ShowFolderList( folderspec ) ‘folderspec 为文件夹名称
Dim fs , f, f1,fc , s
Set fs = CreateObject(“Scripting.FileSystemObject”)
Set f = fs.GetFolder(folderspec) ‘得到folderspec文件夹相关的folder对象
Set fc = f.Files ‘得到folder对象所包含的文件夹的files集合
For Each fi in fc ‘访问folder集合中的每一个folder
s= s & f1.name ‘格式化要显示的文本
s= s & vbCrLf
Next
MsgBox s ‘用对话框显示信息
End Sub
[责任编辑:editor]
现成的控件一般只能显示文件
[责任编辑:editor]