打印本文 打印本文 关闭窗口 关闭窗口
深入Scripting Runtime Library 之一
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2062  更新时间:2009/4/23 18:58:57  文章录入:mintao  责任编辑:mintao
Private Sub Form_Load()
    File1.Path = "c:\windows"
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set fsoSys = Nothing
End Sub

    四、对于TextStream对象的操作
    对于通过VB编程对文本文件进行IO操作,一直是一个头疼的问题。如果使用Inout$函数一次把打开的文件内容
全部读取到一个字符串中的话,对于某一行的字符串操作就会十分不方便,同时还会有一个字符串不能大于65K而导致
无法读取大文件的问题。而采用Line Input的方法又丧失了对文件整体操作的方便性。而TextStream对象提供了一种
基于流的文件操作方式,使得对文本文件的操作方便了很多。
    利用FileSystemObject的CreateTextFile方法或者OpenAsTextStream 方法可以建立一个TextStream对象,该
对象包含了文件中的所有内容,可以通过只读、只写和追加方式打开文件。当建立了TextStream对象只后,用户就可以
直接对TextStream进行操作,从而增加了对文件操作的方便性和安全性。
    下面是一个TextStream对象操作的范例。
    首先建立一个新的工程文件,加入RS库,在Form1中加入三个CommandButon控件和一个TextBox控件,在C:\下建立
一个help.txt的文件,然后在Form1中加入以下代码:
Option Explicit

Dim fsoFile As New FileSystemObject
Dim fsoTextStream As TextStream

Private Sub Command1_Click()
    If Dir$("c:\help.txt") = "" Then
        MsgBox ("c:\help.txt文件不存在,程序将退出")
        Set fsoFile = Nothing
        End
    End If
    ''''打开文件
    Set fsoTextStream = fsoFile.OpenTextFile("c:\help.txt", ForReading)
    Text1.Text = fsoTextStream.ReadAll      ''''将文件读取到Text1中
End Sub

Private Sub Command2_Click()
    Dim fsoTextTemp As TextStream

    ''''关闭原来的文件,并建立一个同名的新的文件,将更新的文件流写入到新文件中
    fsoTextStream.Close
    Set fsoTextStream = Nothing
    Set fsoTextTemp = fsoFile.CreateTextFile("c:\help.txt", True)
    fsoTextTemp.Write Text1.Text
    fsoTextTemp.Close
    Set fsoTextTemp = Nothing
   
    Command1_Click
    Command2.Enabled = False
End Sub

Private Sub Command3_Click()
    fsoTextStream.Close
    Set fsoTextStream = Nothing
    Set fsoFile = Nothing
    End
End Sub

Private Sub Form_Load()
    Text1.Text = ""
    Command1.Caption = "打开文件"
    Command2.Caption = "保存文件"
    Command3.Caption = "退出"
    Command2.Enabled = False
End Sub

Private Sub Text1_Change()
    Command2.Enabled = True
End Sub
    运行程序,点击Command1就可以打开c:\help.txt文件,按Command2保存文件,按Command3退出。

上一页  [1] [2] 

打印本文 打印本文 关闭窗口 关闭窗口