lei_jinbo 发表于 2003-9-24 11:12:00

关于顺序修改文件的问题?

我将一些信息写到顺序文件里,用的文件系统.
    Dim nfsy As New FileSystemObject
    Dim myfile As File
    Set myfile = nfsy.GetFile(strFile)               ' strfile 是一个文件位置字符串
    MsgBox mFile.Path
    Set mtxtStream = myfile.OpenAsTextStream(ForAppending)
   
         FORAPPENDING 是不是只能加到文件末尾,不能想加到哪行就加到哪行.
    mtxtStream.Skip (5)
         或者跳动文件开始的位置?

mccad 发表于 2003-9-24 20:26:00

现在我把TextStream对象的属性和方法列表如下:
AtEndOfLine 属性

描述
只读属性,在 TextStream 文件中,如果文件指针正好在行尾标记的前面,那么该属性值返回 True;否则返回 False。
语法
object.AtEndOfLine
object 总是一个 TextStream 对象的名称。
说明
AtEndOfLine 属性仅应用于已打开供读取的 TextStream 文件;否则就会出错。
下面的代码举例说明了 AtEndOfLine 属性的用法:
Dim fs, a, retstring
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.OpenTextFile("c:\testfile.txt", ForReading, False)
Do While a.AtEndOfLineTrue
    retstring = a.Read(1)
    ...
Loop
a.Close

AtEndOfStream 属性

描述
只读属性,如果文件指针在 TextStream 文件末尾,则该属性值返回 True;否则返回 False。
语法
object.AtEndOfStream
object 总是一个 TextStream 对象的名称。
说明
AtEndOfStream 属性仅应用于已打开供读取的 TextStream 文件;否则就会出错。
下面的代码举例说明了 AtEndOfStream 属性的用法:
Dim fs, a, retstring
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.OpenTextFile("c:\testfile.txt", ForReading, False)
Do While a.AtEndOfStreamTrue
    retstring = a.ReadLine
    ...
Loop
a.Close

Close 方法
复制代码
Column 属性
复制代码
Line 属性
复制代码
Read 方法
复制代码
ReadAll 方法
复制代码
ReadLine 方法
复制代码
Skip 方法
复制代码
SkipLine 方法
复制代码
Write 方法
复制代码
WriteBlankLines 方法
复制代码
WriteLine 方法
复制代码

efan2000 发表于 2003-9-24 21:13:00

对于一个文件的操作,只能选择追加或者覆盖的方式改写数据,而不能插入。
如果要在开始或者中间的位置追加数据,那么必须使用一临时文件来重新生成数据,然后再更改文件名。
页: [1]
查看完整版本: 关于顺序修改文件的问题?