网站首页 > 技术教程 正文
本文所指的文件管理,是对单个文件内容进行写入读取操作,所以有别于对文件的一般性操作。
所以,我们用到一个特别的对象:TextStream 直译意思就是,文件流,也可以理解为文件顺序简便管理。
如上图所示,对象的语法为:
TextStream. { property | method }
其中property 和 method 参数可以为与 TextStream 对象关联任意属性和方法。
具体TextStream 对象有哪些属性和方法,如下图所示:
也可以查看下表 :
TextStream 方法
方法 | 说明 |
Close | 关闭打开的 TextStream 文件。 |
Read | 从 TextStream 文件读取指定数量的字符并返回结果。 |
ReadAll | 读取整个 TextStream 文件并返回结果。 |
ReadLine | 从 TextStream 文件读取一行并返回结果。 |
Skip | 在读取 TextStream 文件时跳过指定数量的字符。 |
SkipLine | 当读取 TextStream 文件时跳过下一行。 |
Write | 将指定的文本写入 TextStream 文件。 |
WriteBlankLines | 将指定数量的换行字符写入 TextStream 文件。 |
WriteLine | 将指定的文本和换行符写入 TextStream 文件。 |
TextStream 属性:
属性 | 说明 |
AtEndOfLine | 如果文件指针紧接在 TextStream 文件的行尾标记之前,则返回 true;如果不是,则返回 false。 |
AtEndOfStream | 如果文件指针位于 TextStream 文件的末尾,则返回 true;如果不是,则返回 false。 |
Column | 返回输入流中当前字符位置的列号。 |
Line | 返回 TextStream 文件中当前的行号。 |
如下示例,进行具体说明:
本示例可以实现打开一个选定的文本文件,然后编辑后进行保存操作。
首先,要解决一个问题,如何返回一个TextStream对象?
实际上是由 FileSystemObject 的多个方法来进行返回。
- CreateTextFile 方法返回 TextStream 对象。
- OpenTextFile方法返回 TextStream 对象。
也可以通过GetFIle对象的OpenAsTextStream方法返回一个TextStream对象。
示例:
Sub CreateFile
Set fs = CreateObject("Scripting.FileSystemObject")
Set x = fs.CreateTextFile("c:\JiangMi.txt", True)
x.Close
End Sub示例中的x就是一个TextStream对象。
代码:
Private Sub OpenTextFile()
'打开文件
Me.TextBox1.Text = ""
Me.TextBox2.Text = ""
Dim fs As Object, ts As Object
Set fs = CreateObject("Scripting.FileSystemObject") '创建文件系统对象
With Application.FileDialog(msoFileDialogOpen)
If .Show = -1 Then
Set ts = fs.opentextfile(.SelectedItems(1), 1, False) '打开文件
Me.TextBox2.Text = .SelectedItems(1)
If Not ts.atendofstream Then
' Me.TextBox1.Text = ts.readall '读取所有内容
' ts.Skip 3'跳过3个字符
' Me.TextBox1.Text = ts.readline'读取一行字符
' ts.skipline '跳过一行
Me.TextBox1.Text = ts.readall
End If
ts.Close
End If
End With
Set fs = Nothing
End SubPrivate Sub SaveFile()
'保存文件
Dim fs As Object, ts As Object, rs As Object
Set fs = CreateObject("Scripting.FileSystemObject") '创建文件系统对象
If VBA.Dir(Me.TextBox2.Text, vbNormal) <> "" Then
Set ts = fs.getfile(Me.TextBox2.Text)
Set rs = ts.openastextstream(2, -2)
rs.writeblanklines 3 '输入3个换行符
rs.writeline "#." '输入字符 和换行符
rs.write Me.TextBox1.Text
rs.Close
Set ts = Nothing
End If
Set fs = Nothing
End Sub根据以上两段程序可以实现对文件的读取和写入操作,以及相关属性的解读操作。
文件管理实际上是一个磁盘管理的内容,更多地学习一下数据结构,对此就有了更加深入的理解了,所以,这方面对于只知道表格编辑来说,还是不太容易理解的。
END
更多阅读:
猜你喜欢
- 2024-10-25 Java 17 NIO 知识点 Files 操作(java17课)
- 2024-10-25 PE格式:新建节并插入代码(怎么用pe创建新用户)
- 2024-10-25 入门Java不迷路!一篇教你搞懂Java 「File类」的概述和方法
- 2024-10-25 Qt 之QTemporaryFile用法(创建临时文件)
- 2024-10-25 EndNote使用技巧(4)之七种方法导入文献?一文全搞定
- 2024-10-25 Vue+Element UI实现断点续传、分片上传、秒传
- 2024-10-25 共享数据资源,VBA代码导入已有文本数据文件的方法
- 2024-10-25 (12)文本文件操作参考(文本的基本操作)
- 2024-10-25 使用StreamWriter类的对文件创建写入
- 2024-10-25 大文件上传:秒传、断点续传、分片上传
欢迎 你 发表评论:
- 10-23Excel计算工龄和年份之差_excel算工龄的公式year
- 10-23Excel YEARFRAC函数:时间的"年份比例尺"详解
- 10-23最常用的10个Excel函数,中文解读,动图演示,易学易用
- 10-23EXCEL中如何计算截止到今日(两个时间中)的时间
- 10-2390%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 10-23计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- 10-23Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 10-23怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- 最近发表
-
- Excel计算工龄和年份之差_excel算工龄的公式year
- Excel YEARFRAC函数:时间的"年份比例尺"详解
- 最常用的10个Excel函数,中文解读,动图演示,易学易用
- EXCEL中如何计算截止到今日(两个时间中)的时间
- 90%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- Excel日期函数之DATEDIF函数_excel函数datedif在哪里
- Excel函数-DATEDIF求司龄_exceldatedif函数计算年龄
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)

本文暂时没有评论,来添加一个吧(●'◡'●)