fso.createtextfile的简单介绍
AB资源网 2023-04-20 14:46 99 浏览 0 评论
本文目录一览:
- 1、vb创建空文本文件的方法?
- 2、VB的关于文件保存的方式?
- 3、VB下如何调用文本文档?
- 4、fso.createtextfile 写出的文件编码问题
vb创建空文本文件的方法?
创建空文本文件(有时被叫做“文本流”)有三种方法。
第一种方法是用 CreateTextFile 方法。 下面的示例示范了在 VBScript 中如何用这种方法来创建文本文件:
Dim fso, f1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.createtextfile("c:\testfile.txt", True)
要在 Visual Basic Scripting Edition 中用这种方法,则使用下面的代码:
var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.createtextfile("c:\\testfile.txt", true);
创建文本文件的第二种方法是,使用 FileSystemObject 对象的 OpenTextFile 方法,并设置
ForWriting 标志。在 VBScript 中,代码就像下面的示例一样:
Dim fso, ts
Const ForWriting = 2
Set fso = CreateObject("Scripting. FileSystemObject")
Set ts = fso.OpenTextFile("c:\test.txt", ForWriting, True)
要在 Visual Basic Scripting Edition 中使用这种方法来创建文本文件,则使用下面的代码:
var fso, ts;
var ForWriting= 2;
fso = new ActiveXObject("Scripting.FileSystemObject");
ts = fso.OpenTextFile("c:\\test.txt", ForWriting, true);
创建文本文件的第三种方法是,使用 OpenAsTextStream 方法,并设置 ForWriting
标志。要使用这种方法,在 VBScript 中使用下面的代码:
Dim fso, f1, ts
Const ForWriting = 2
Set fso = CreateObject("Scripting.FileSystemObject")
fso.createtextfile ("c:\test1.txt")
Set f1 = fso.GetFile("c:\test1.txt")
Set ts = f1.OpenAsTextStream(ForWriting, True)
在 Visual Basic Scripting Edition 中,则使用下面示例中的代码:
var fso, f1, ts;
var ForWriting = 2;
fso = new ActiveXObject("Scripting.FileSystemObject");
fso.createtextfile ("c:\\test1.txt");
f1 = fso.GetFile("c:\\test1.txt");
ts = f1.OpenAsTextStream(ForWriting, true);
添加数据到文件中
一旦创建了文本文件,使用下面的三个步骤向文件添加数据:
打开文本文件。
写入数据。
关闭文件。
要打开现有的文件,则使用 FileSystemObject 对象的 OpenTextFile 方法或 File 对象的 OpenAsTextStream
方法。
要写数据到打开的文本文件,则根据下表所述任务使用 TextStream 对象的 Write、WriteLine 或 WriteBlankLines
方法。
任务
方法
向打开的文本文件写数据,不用后续一个新行字符。
Write
向打开的文本文件写数据,后续一个新行字符。
WriteLine
向打开的文本文件写一个或多个空白行。
WriteBlankLines
要关闭一个打开的文件,则使用 TextStream 对象的 Close 方法。
注意 新行字符包含一个或几个字符(取决于操作系统),以把光标移动到下一行的开始位置(回车/换行)。注意某些字符串末尾可能已经有这个非打印字符了。
下面的 VBScript 例子示范了如何打开文件,和同时使用三种写方法来向文件添加数据,然后关闭文件:
Sub CreateFile()
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.createtextfile("c:\testfile.txt", True)
' 写一行,并且带有新行字符。
tf.WriteLine("Testing 1, 2, 3.")
'向文件写三个新行字符。
tf.WriteBlankLines(3)
'写一行。
tf.Write ("This is a test.")
tf.Close
End Sub
这个示例示范了在 Visual Basic Scripting Edition 中如何使用这三个方法:
function CreateFile()
{
var fso, tf;
fso = new ActiveXObject("Scripting.FileSystemObject");
tf = fso.createtextfile("c:\\testfile.txt", true);
// 写一行,并且带有新行字符。
tf.WriteLine("Testing 1, 2, 3.") ;
// 向文件写三个新行字符。
tf.WriteBlankLines(3) ;
// 写一行。
tf.Write ("This is a test.");
tf.Close();
}
VB的关于文件保存的方式?
1.打开顺序访问文件
当以顺序型访问打开一个文件时,可执行以下操作:
从文件输入字符
(Input)
向文件输出字符
(Output)
把字符加到文件
(Append)
要顺序型访问打开一个文件,Open
语句使用以下语法:
Open
pathname
For
[Input
|
Output
|
Append]
As
filenumber
[Len
=
buffersize]
从文件中读取字符串
要检索文本文件的内容,应以顺序
Input
方式打开该文件。然后使用
Line
Input#,Input(
),或者
Input#
语句将文件拷贝到程序变量中。
Line
Input
#FileNum,
NextLine
Input
#FileNum,
name,
street,
city,
state,
zip
LinesFromFile
=
Input(n,
FileNum)
要在顺序文件中存储变量的内容,应以顺序
Output
或
Append
打开它,然后使用
#
语句。例如,文本编辑器可以使用以下代码行来把一个文本框的内容拷贝到文件。
#FileNum,
TheBox.Text
Visual
Basic
也支持
Write
#
语句,它把一列数字和/或字符串表达式写入文件。它自动地用逗号分开每个表达式,并且在字符串表达式端放置引号。
Write
#FileNum
AnyString,
AnyNumber
注意
如果正在用顺序型访问的
Write
#
与
Input
#
语句,可考虑换用随机型
或二进制型访问,因为它们更适合面向于记录的数据。
2.打开随机访问的文件
要打开随机访问的文件,Open
语句使用以下语法:
Open
pathname
[For
Random]
As
filenumber
Len
=
reclength
因为
Random
是缺省的访问类型,所以
For
Random
关键字是可选项。
可用以下代码打开文件:
Open
"MYFILE.FIL"
For
Random
As
FileNum
Len
=
RecLength
把记录读入变量
使用
Get
语句把记录复制到变量。
Get
FileNum,
Position,
Employee
把变量写入记录
使用
Put
语句把记录添加或者替换到随机型访问打开的文件。
替换记录
要替换记录,请使用
Put
语句,指定想要替换的记录位置,例如:
Put
#FileNum,
Position,
Employee
添加记录
要向随机访问打开的文件的尾端添加新记录,应使用前述代码段中所示的
Put
语句。把
Position
变量的值设置为比文件中的记录数多
1。例如,要在一个包含五个记录的文件中添加一个记录,把
Position
设置为
6。
LastRecord
=
LastRecord
+
1
Put
#FileNum,
LastRecord,
Employee
删除记录
通过清除其字段可以删除一个记录,但是该记录仍在文件中存在。通常文件中不能有空记录,因为它们会浪费空间且会干扰顺序操作。最好把余下的记录拷贝到一个新文件,然后删除老文件。
3.打开二进制型访问的文件
要为二进制型访问打开文件,应使用以下
Open
语句的语法:
Open
pathname
For
Binary
As
filenumber
通过使用二进制型访问可使磁盘空间的使用降到最小。因为这不需要固定长度的字段,类型声明语句可以省略字符串长度参数。
4.用
File
System
Objects
创建文件并添加数据
有三种不同方法来创建一个顺序文本文件(有时被称为“文本流”)。一种方法就是使用
CreateTextFile
方法。要创建一个空文本文件,可以:
Dim
fso
As
New
FileSystemObject,
fil
As
File
Set
fil
=
fso.createtextfile("c:\testfile.txt",
True)
另一种方法是使用
FileSystemObject
对象的
OpenTextFile
方法,该对象的
ForWriting
标志设置为:
Dim
fso
As
New
FileSystemObject,
ts
As
New
TextStream
Set
ts
=
fso.OpenTextFile("c:\test.txt",
ForWriting)
或者使用带
ForWriting
标志设置的
OpenAsTextStream
方法:
Dim
fso
As
New
FileSystemObject,
fil
As
File,
ts
As
TextStream
Set
fso
=
CreateObject("Scripting.FileSystemObject")
("test1.txt")
Set
fil
=
fso.GetFile("test1.txt")
Set
ts
=
fil.OpenAsTextStream(ForWriting)
添加数据到文件
文本文件一经创建,就可以分三步向其中加入数据:
打开文本文件以备写入数据。
写入数据。
关闭文件。
要打开文件,可以使用下面两种方法中的任一种:
File
对象的
OpenAsTextStream
方法,或
FileSystemObject
对象的
OpenTextFile
方法。
要向打开的文本文件中写入数据,可以使用
TextStream
对象的
Write
或
WriteLine
方法。它们之间的唯一差别是
WriteLine
在指定的字符串末尾添加换行符。
如果想要向文本文件中添加一个空行,请使用
WriteBlankLines
方法。
要关闭一个已打开的文件,请使用
TextStream
对象的
Close
方法。
例:
Sub
Create_File()
Dim
fso,
txtfile
Set
fso
=
CreateObject("Scripting.FileSystemObject")
Set
txtfile
=
fso.createtextfile("c:\testfile.txt",
True)
txtfile.Write
("这是一个测试例子。")
'
写入一行。
'
写入一行带有换行符的文本。
txtfile.WriteLine("Testing
1,
2,
3.")
'
向文件中写入三个换行符。
txtfile.WriteBlankLines(3)
txtfile.Close
End
Sub
使用
File
System
Objects
读取文件
要从一个文本文件中读取数据,请使用
TextStream
对象的
Read、
ReadLine
或
ReadAll
方法:
任务
方法
从一个文件中读取指定数量的字符
Read
读取一整行(紧跟,但不包括,换行符)
ReadLine
读取一个文本文件的所有内容
ReadAll
如果使用
Read
或
ReadLine
方法并且想要跳过数据的某些部分,可以使用
Skip
或
SkipLine
方法。
这些读取方法产生的文本被存储在一个字符串中,而这个字符串可以在一个控件中显示,也可以被字符串操作符分解(诸如
Left、
Right
和
Mid)、合并等等。
注意
vbNewLine
常数包含一个或多个字符(取决于操作系统)使得光标移至下一行的开头(回车/换行)。请注意,有的字符串末尾可能有这样的非打印字符。
VB下如何调用文本文档?
方法一
使用文件
通过使用新的面向对象的 FSO 对象,诸如 Copy、 Delete、 Move 以及 OpenAsTextStream,或者使用传统的函数,诸如 Open、 Close、 FileCopy、 GetAttr 等等,您可以使用 Visual Basic 中的文件。请注意,不用考虑其文件类型就可以移动、复制或删除文件。
关于传统函数的用法的详细信息,请参阅本章的“用传统的文件 I/O 语句和函数处理文件”部分。本节的余下部分将描述如何使用新的 FSO 对象、方法和属性来使用文件。
文件操作主要有两类:
创建、添加、或删除数据,以及阅读文件
移动、复制、和删除文件
用 File System Objects 创建文件并添加数据
有三种不同方法来创建一个顺序文本文件(有时被称为“文本流”)。一种方法就是使用 CreateTextFile 方法。要创建一个空文本文件,可以:
Dim fso As New FileSystemObject, fil As File
Set fil = fso.createtextfile("c:\testfile.txt", True)
注意 FSO 对象模型尚不支持创建随机文件或二进制文件。要创建随机文件和二进制文件,请使用带 Random 或 Binary 标志的 Open 命令。关于如何操作随机文件和二进制文件的详细信息,请参阅本章的“使用随机文件访问”和“使用二进制文件访问”部分。
另一种方法是使用 FileSystemObject 对象的 OpenTextFile 方法,该对象的 ForWriting 标志设置为:
Dim fso As New FileSystemObject, ts As New TextStream
Set ts = fso.OpenTextFile("c:\test.txt", ForWriting)
或者使用带 ForWriting 标志设置的 OpenAsTextStream 方法:
Dim fso As New FileSystemObject, fil As File, ts As TextStream
Set fso = CreateObject("Scripting.FileSystemObject")
fso.createtextfile ("test1.txt")
Set fil = fso.GetFile("test1.txt")
Set ts = fil.OpenAsTextStream(ForWriting)
添加数据到文件
文本文件一经创建,就可以分三步向其中加入数据:
打开文本文件以备写入数据。
写入数据。
关闭文件。
要打开文件,可以使用下面两种方法中的任一种: File 对象的 OpenAsTextStream 方法,或 FileSystemObject 对象的 OpenTextFile 方法。
要向打开的文本文件中写入数据,可以使用 TextStream 对象的 Write 或 WriteLine 方法。它们之间的唯一差别是 WriteLine 在指定的字符串末尾添加换行符。
如果想要向文本文件中添加一个空行,请使用 WriteBlankLines 方法。
要关闭一个已打开的文件,请使用 TextStream 对象的 Close 方法。
下面这个例子示范了如何打开一个文件,使用上述三种写入方法向该文件中添加数据,然后关闭文件:
Sub Create_File()
Dim fso, txtfile
Set fso = CreateObject("Scripting.FileSystemObject")
Set txtfile = fso.createtextfile("c:\testfile.txt", True)
txtfile.Write ("这是一个测试例子。") ' 写入一行。
' 写入一行带有换行符的文本。
txtfile.WriteLine("Testing 1, 2, 3.")
' 向文件中写入三个换行符。
txtfile.WriteBlankLines(3)
txtfile.Close
End Sub
使用 File System Objects 读取文件
要从一个文本文件中读取数据,请使用 TextStream 对象的 Read、 ReadLine 或 ReadAll 方法:
任务 方法
从一个文件中读取指定数量的字符 Read
读取一整行(紧跟,但不包括,换行符) ReadLine
读取一个文本文件的所有内容 ReadAll
如果使用 Read 或 ReadLine 方法并且想要跳过数据的某些部分,可以使用 Skip 或 SkipLine 方法。
这些读取方法产生的文本被存储在一个字符串中,而这个字符串可以在一个控件中显示,也可以被字符串操作符分解(诸如 Left、 Right 和 Mid)、合并等等。
注意 vbNewLine 常数包含一个或多个字符(取决于操作系统)使得光标移至下一行的开头(回车/换行)。请注意,有的字符串末尾可能有这样的非打印字符。
示例
Sub Read_Files()
Dim fso As New FileSystemObject, txtfile, _
fil1 As File, ts As TextStream
Set txtfile = fso.createtextfile("c:\testfile.txt", True)
MsgBox "正在写入文件"
' 写入一行。
Set fil1 = fso.GetFile("c:\testfile.txt")
Set ts = fil1.OpenAsTextStream(ForWriting)
ts.Write "Hello World"
ts.Close
' 读取文件的内容。
Set ts = fil1.OpenAsTextStream(ForReading)
s = ts.ReadLine
MsgBox s
ts.Close
End Sub
移动、复制和删除文件
对文件的移动、复制和删除,FSO 对象模型都提供了两种方法:
任务 方法
移动一个文件 File.Move 或
FileSystemObject.MoveFile
复制一个文件 File.Copy 或
FileSystemObject.CopyFile
删除一个文件 File.Delete 或
FileSystemObject.deletefile
示例
本例先在C盘的根目录下创建了一个文本文件,并向其中写入一些信息,然后将该文件移至一个名叫 \tmp 的目录,并复制到一个叫 \temp 的目录下,最后删掉该文件在这两个子目录下的拷贝。
要运行本例,请先确认在C盘的根目录下已经存在名叫 \tmp 和 \temp 的目录。
Sub Manip_Files()
Dim fso as New FileSystemObject, txtfile, fil1, fil2
Set txtfile = fso.createtextfile("c:\testfile.txt", True)
MsgBox "写入文件"
' 写入一行。
txtfile.Write ("这是一个测试例子。")
' 关闭要写入的文件。
txtfile.Close
MsgBox "移动文件到 c:\tmp"
' 获得C盘根目录下的一个文件句柄。
Set fil1 = fso.GetFile("c:\testfile.txt")
' 将该文件移至 \tmp 目录下。
fil1.Move ("c:\tmp\testfile.txt")
MsgBox "复制文件到 c:\temp"
' 将该文件复制到 \temp 目录下。
fil1.Copy ("c:\temp\testfile.txt")
MsgBox "删除文件"
' 获得这些文件当前位置的句柄。
Set fil1 = fso.GetFile("c:\tmp\testfile.txt")
Set fil2 = fso.GetFile("c:\temp\testfile.txt")
' 删除这些文件。
fil1.Delete
fil2.Delete
MsgBox "全部完成!"
方法二
使用随机文件访问
File System Object 模式不提供随机文件创建或访问方法。如果需要创建或读取随机文件,此信息将能帮助您。
随机型访问文件中的字节构成相同的一些记录,每个记录包含一个或多个字段。具有一个字段的记录对应于任一标准类型,比如整数或者定长字符串。具有多个字段的记录对应于用户定义类型。例如,下边所定义的 Worker Type 创建由三个字段组成的 19 个字节的记录。
Type Worker
LastNameAs String * 10
TitleAs String * 7
RankAs String * 2
End Type
声明变量
在应用程序打开以随机型访问的文件以前,应先声明所有用来处理该文件数据所需的变量。这包括用户定义类型的变量,它对应该文件中的记录,和标准类型的其它变量,这些变量保存为随机型访问而打开的文件与处理相关的数据
定义记录类型
在打开一个文件进行随机访问之前,应定义一个类型,该类型对应于该文件包含或将包含的记录。例如,一个雇员记录文件可定义一个称为 Person 的用户定义的数据类型,如下所述:
Type Person
ID As Integer
MonthlySalary As Currency
LastReviewDate As Long
FirstName As String * 15
LastName As String * 15
Title As String * 15
ReviewComments As String * 150
End Type
在类型定义中声明字段变量
因为随机访问文件中的所有记录都必须有相同的长度,所以固定的长度对用户定义类型中的各字符串元素通常很有用,就象以上的 Person 类型说明中所示的一样,在此作为例子,FirstName 与 LastName 都具有 15 个字符的固定长度。
如果实际字符串包含的字符数比它写入的字符串元素的固定长度少,则 Visual Basic 会用空白(字符代码 32)来填充记录中后面的空间。还有,如果字符串比字段的尺寸长,则它就会被截断。如果使用 长度可变的字符串,则任何用 Put 存储的或用 Get 检索的记录总长度都不能超过在 Open 语句的 Len 分句中所指定的记录长度。
声明其它变量
在定义与典型记录对应的类型以后,应接着声明程序需要的任何其它变量,用来处理作为随机访问而打开的文件。例如:
'记录变量。
Public Employee As Person
'跟踪当前记录。
Public Position As Long
'文件中最后那条记录的编号。
Public LastRecord As Long
打开随机访问的文件
要打开随机访问的文件,Open 语句使用以下语法:
Open pathname [For Random] As filenumber Len = reclength
因为 Random 是缺省的访问类型,所以 For Random 关键字是可选项。
表达式 Len = reclength 指定了每个记录的尺寸in bytes. Note that every string variable in Visual Basic stores a Unicode string and that you must specify the byte length of that Unicode string。如果 reclength 比写文件记录的实际长度短,则会产生一个错误。如果 reclength 比记录的实际长度长,则记录可写入,只是会浪费些磁盘空间。
可用以下代码打开文件:
Dim FileNum As Integer, RecLength As Long, Employee As Person
'计算每条记录的长度。
RecLength = LenB(Employee)
'取出下一个可用文件编号。
FileNum = FreeFile
'用 Open 语句打开新文件。
Open "MYFILE.FIL" For Random As FileNum Len = RecLength
编辑随机型访问打开的文件
如要编辑随机型访问的文件,请先把记录从文件读到程序变量,然后改变各变量的值,最后,把变量写回该文件。后面各节讨论如何编辑随机型访问打开的文件。
把记录读入变量
使用 Get 语句把记录复制到变量。例如,要把一个记录从雇员记录文件拷贝到 Employee 变量,可使用以下代码:
Get FileNum, Position, Employee
在这行代码中,FileNum 包含用于打开文件的 Open 语句的编号;Position 包含要拷贝的记录数;而 Employee 声明为用户定义类型 Person,它用来接收记录的内容。
把变量写入记录
使用 Put 语句把记录添加或者替换到随机型访问打开的文件。
替换记录
要替换记录,请使用 Put 语句,指定想要替换的记录位置,例如:
Put #FileNum, Position, Employee
这个代码将用 Employee 变量中的数据来替换由 Position 所指定的编号的记录。
添加记录
要向随机访问打开的文件的尾端添加新记录,应使用前述代码段中所示的 Put 语句。把 Position 变量的值设置为比文件中的记录数多 1。例如,要在一个包含五个记录的文件中添加一个记录,把 Position 设置为 6。
下述语句把一个记录添加到文件的末尾:
LastRecord = LastRecord + 1
Put #FileNum, LastRecord, Employee
删除记录
通过清除其字段可以删除一个记录,但是该记录仍在文件中存在。通常文件中不能有空记录,因为它们会浪费空间且会干扰顺序操作。最好把余下的记录拷贝到一个新文件,然后删除老文件。
要清除随机访问文件中删除的记录,请按照以下步骤执行:
创建一个新文件。
把有用的所有记录从原文件复制到新文件。
关闭原文件并用 Kill 语句删除它。
使用 Name 语句把新文件以原文件的名字重新命名。
方法三
使用顺序文件访问
推荐您使用 File System Objects 来创建文本文件,但该信息只在需要使用旧文本文件创建方法时才提供。
当要处理只包含文本的文件时,比如由典型文本编辑器所创 建的文件-也就是说,其中的数据没有分成记录的文件,使用顺序型访问最好。顺序型访问不太适于存储很多数字,因为每个数字都要按字符串存储。一个四位数将需要 4 个字节的存储空间,而不是作为一个整数来存储时只需的 2 个字节。
打开顺序访问文件
当以顺序型访问打开一个文件时,可执行以下操作:
从文件输入字符 (Input)
向文件输出字符 (Output)
把字符加到文件 (Append)
要顺序型访问打开一个文件,Open 语句使用以下语法:
Open pathname For [Input | Output | Append] As filenumber [Len = buffersize]
当打开顺序文件作为 Input 时,该文件必须已经存在,否则,会产生一个错误。然而,当打开一个不存在的文件作为 Output 或 Append 时,Open 语句首先创建该文件,然后再打开它。
当在文件与程序之间拷贝数据时,选项 Len 参数指定缓冲区的字符数。
在打开一个文件 Input、Output 或 Append 以后,在为其它类型的操作重新打开它之前必须先使用 Close 语句关闭它。
编辑为顺序访问打开的文件
如果要编辑一个文件,先把它的内容读入到程序变量,然后改变这些变量,最后再把这些变量写回到该文件。以下各节讨论如何编辑以顺序型访问打开的各记录。
从文件中读取字符串
要检索文本文件的内容,应以顺序 Input 方式打开该文件。然后使用 Line Input#,Input( ),或者 Input# 语句将文件拷贝到程序变量中。
Visual Basic 提供了一次读写顺序文件一个字符或一行的语句和功能。
例如,以下代码段逐行读取一个文件:
Dim LinesFromFile, NextLine As String
Do Until EOF(FileNum)
Line Input #FileNum, NextLine
LinesFromFile = LinesFromFile + NextLine + Chr(13) + Chr(10)
Loop
尽管 Line Input # 到达回车换行时它会识别行尾,但是,当它把该行读入变量时,不包括回车换行。如果要保留该回车换行,代码必须添加。
也可以使用 Input # 语句,它读取文件中所写的一列的数字和/或字符串表达式。例如,要从一个邮件列表文件中读取一行,可使用以下语句:
Input #FileNum, name, street, city, state, zip
可以使用 Input 函数来从文件向变量拷贝任意数量的字符,所给的变量大小应足够大。例如,以下的代码使用 Input 把指定数目的字符复制到变量。
LinesFromFile = Input(n, FileNum)
要将整个文件复制到变量,请使用 InputB 函数将字节从文件复制到变量。因为InputB 函数返回一个 ANSI 字符串,您必须使用 StrConv 函数将 ANSI 字符串转换为一个如下的 UNICODE 字符串:
LinesFromFile = StrConv(InputB(LOF(FileNum), FileNum), vbUnicode)
把字符串写入文件
要在顺序文件中存储变量的内容,应以顺序 Output 或 Append 打开它,然后使用 Print # 语句。例如,文本编辑器可以使用以下代码行来把一个文本框的内容拷贝到文件。
Print #FileNum, TheBox.Text
Visual Basic 也支持 Write # 语句,它把一列数字和/或字符串表达式写入文件。它自动地用逗号分开每个表达式,并且在字符串表达式端放置引号。
Dim AnyString As String, AnyNumber As Integer
AnyString = "AnyCharacters"
AnyNumber = 23445
Write #FileNum AnyString, AnyNumber
这个代码段把两个表达式写入由 FileNum 指定的文件。第一个表达式包含一个字符串而第二个包含数字 23445。因而,Visual Basic 把以下的字符(包括所有标点符号)写入到文件中:
"AnyCharacters",23445
注意 如果正在用顺序型访问的 Write # 与 Input # 语句,可考虑换用随机型 或二进制型访问,因为它们更适合面向于记录的数据。
方法四
使用二进制文件访问
File System Object 模式不提供二进制文件创建或访问方法。如果需要创建或读取二进制文件,此信息将会帮助您做到。
二进制访问能提供对文件的完全控制,因为文件中的字节可以代表任何东西。例如,通过创建长度可变的记录可保存磁盘空间。当要保持文件的尺寸尽量小时,应使用二进制型访问。
注意 当把二进制数据写入文件中时,使用变量是 Byte 数据类型的数组的,而不是 String 变量。 String 被认为包含的是字符,而二进制型数据可能无法正确地存在 String 变量中。
打开二进制型访问的文件
要为二进制型访问打开文件,应使用以下 Open 语句的语法:
Open pathname For Binary As filenumber
可以看到,二进制访问中的 Open 与随机存取的 Open 不同,它没有指定 Len = reclength。如果在二进制型访问的 Open 语句中包括了记录长度,则被忽略。
在长度可变的字段中保存信息
为了更好地了解二进制型访问,考虑有一个雇员记录文件。这个文件用长度固定的记录和字段来储雇员的信息。
Type Person
ID As Integer
MonthlySalary As Currency
LastReviewDate As Long
FirstName As String * 15
LastName As String * 15
Title As String * 15
ReviewComments As String * 150
End Type
不管字段的实际内容如何,该文件每条记录都占用 209 个字节。
通过使用二进制型访问可使磁盘空间的使用降到最小。因为这不需要固定长度的字段,类型声明语句可以省略字符串长度参数。
Type Person
ID As Integer
MonthlySalary As Currency
LastReviewDate As Long
FirstName As String
LastName As String
Title As String
ReviewComments As String
End Type
Public Empl As Person '定义记录。
因为各字段长度是可变的,所以在雇员记录文件中每个雇员记录只存储在精确所需的字节中。用长度可变字段来进行二进制输入/输出的缺点,是不能随机地访问记录-必须顺序地访问记录以了解每一个记录的长度。可以直接查看文件中指定字节的位置,但是,如果记录的长度可变,则无法直接知道哪条记录在哪个字节处。
fso.createtextfile 写出的文件编码问题
fso.createtextfile(filename,overwrite,unicode)
把第三个参数设为false就可以了
fso.createtextfile的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、fso.createtextfile的信息别忘了在本站进行查找喔。
相关推荐
- 云主机FTP软件:高效传输与安全管理的一站式解决方案
-
在云计算时代,云主机已成为企业和个人用户托管应用和存储数据的首选。为了方便文件传输,FTP(文件传输协议)软件在云主机环境中扮演着重要角色。本文将详细介绍如何在云主机上配置和使用FTP软件...
- 云主机FP:引领未来计算,解锁无限可能
-
云主机FP(FloatingPoint)是指在云计算环境中,针对浮点运算性能进行优化的虚拟机实例。浮点运算在科学计算、工程模拟、金融建模、图形处理等领域中占据重要地位,因此云主机FP的设计和配置...
- 云主机ECS:解锁企业数字化转型的新引擎,高效、安全、灵活的云计算解决方案
-
云主机ECS(ElasticComputeService)是阿里云提供的一种弹性计算服务,它允许用户在云端创建和管理虚拟机实例。ECS的核心优势在于其灵活性和可扩展性,能够满足各种规模和类型的业...
- 云主机D盘:解锁无限存储空间,轻松应对大数据挑战!
-
云主机是一种基于云计算技术的虚拟化服务器,它允许用户在云平台上创建、配置和管理虚拟机实例。在云主机中,磁盘分区是存储数据的关键部分,通常包括系统盘和数据盘。系统盘用于安装操作系统和运行应用...
- 云主机DNS解析:提升网站速度与稳定性的关键策略
-
云主机DNS(DomainNameSystem)是云计算环境中至关重要的一部分,它负责将域名转换为IP地址,从而使得用户能够通过易于记忆的域名访问云主机上的服务和应用。本文将深入探讨云主机DNS...
- 云主机C盘爆满?快速解决方法大揭秘,让你的服务器重获新生!
-
云主机C盘满了是一个常见但棘手的问题,尤其对于依赖云服务进行日常运营的企业和个人用户来说,这可能导致系统性能下降、应用程序崩溃,甚至数据丢失。本文将详细探讨云主机C盘满的原因、影响以及解决方法。...
- 云主机CPU选择指南:提升性能与效率的关键决策
-
在选择云主机的CPU时,用户需要考虑多个因素,以确保所选的CPU能够满足其应用的需求,同时优化成本效益。以下是一些关键点,帮助用户在云主机CPU选择过程中做出明智的决策。了解应用的性能需求...
- 云主机CPU性能大比拼:揭秘顶级云服务商的核心竞争力
-
云主机CPU是云计算环境中至关重要的组成部分,它直接影响着云服务的性能、稳定性和用户体验。CPU,即中央处理器,是计算机系统的核心,负责执行指令和处理数据。在云主机中,CPU的性能决定了虚...
- 云主机ASP:高效搭建动态网站,轻松实现业务扩展与性能优化
-
云主机ASP(ActiveServerPages)是一种在云环境中运行ASP应用程序的技术。ASP是一种由微软开发的动态网页技术,允许开发者使用VBScript或JScript等脚本语言编写服务...
- 云主机API:解锁无限可能,引领企业数字化转型新纪元
-
云主机API(ApplicationProgrammingInterface)是云计算服务提供商为用户提供的一种编程接口,允许开发者通过编程方式管理和操作云主机资源。这些API通常基于RESTf...
- 云主机99idc:高效稳定,轻松搭建您的专属云端空间,一键部署,畅享无限可能!
-
云主机99idc是一家专注于提供云计算服务的公司,其核心业务是为企业和个人用户提供高性能、高可靠性的云主机服务。随着数字化转型的加速,云计算已经成为企业IT基础设施的重要组成部分,而云主机99i...
- 云主机80端口:解锁无限可能,开启高效网络新时代!
-
云主机是一种基于云计算技术的虚拟化服务器,它通过互联网提供计算资源和服务。在云主机中,80端口是一个非常重要的端口,通常用于HTTP协议,即网页服务。本文将详细探讨云主机80端口的相关内容...
- 云主机403错误:解锁高效解决方案,提升网站性能与安全
-
云主机403错误是一个常见的网络问题,通常表示用户在尝试访问某个资源时被服务器拒绝。这种错误可能由多种原因引起,包括权限问题、配置错误、防火墙设置等。以下是关于云主机403错误的一些详细信...
- 云主机360:全方位云端解决方案,助力企业数字化转型无忧
-
云主机360是一种基于云计算技术的虚拟化服务器解决方案,它通过将物理服务器资源虚拟化,为用户提供灵活、高效、安全的计算服务。云主机360的核心优势在于其高度的可扩展性和弹性,用户可以根据业务需求...
- 云主机301:引领未来云计算的新纪元,高效稳定,助力企业数字化转型!
-
云主机301是一种常见的网络重定向状态码,通常用于指示用户请求的资源已被永久移动到新的URL。在云计算环境中,云主机301状态码的出现可能涉及到多种技术和管理策略,下面我们将详细探讨这一现象。...
你 发表评论:
欢迎- 一周热门
-
-
HostYun廉价洛杉矶三网回程CN2 GIA云服务器内测13元/月起(美国原生IP,去程10Gbps防御)
-
大网数据:双12秒杀聚惠,湖北100G高防云低至0元/月,湖北独服务器低至210元、200G高防+50Mbps带宽
-
HostYun洛杉矶大硬盘云服务器9折22.5元/月起(240G-500G硬盘/1Gbps/10G防御)
-
樊云香港双程CN2及洛杉矶50G高防三网CN2 GIA云服务器9折22.5元/月起
-
大网数据、湖北高防云服务器低至39元/月起、湖北高防独服务器低至245元起(200G硬防、金盾+傲盾防CC)
-
spinservers圣何塞/达拉斯10Gbps带宽高配服务器月付89美元起
-
tmhhost美国高防云服务器8折_CeRaNetworks机房/三网cn2直连/适合建站
-
高防服务器大网数据湖北独服务器低至210元、200G高防+50Mbps带宽
-
DogYun新上韩国独立服务器,E5/SSD+NVMe优惠后300元/月,自动化上架
-
初忆云 – 2020年中云聚惠全场五折 BGP云服务器低至88/年,抓紧上车
-
- 互动交流
- 标签列表
- 最新评论
-
您的文章条理清晰,论述有据,说服力强。您的文章情感真挚,能够触动人心,引起共鸣。https://www.renhehui.com/renhehui/1479.h
沉醉于月色 评论于:08-09虚拟机部署好后跟物理机一样当服务器的,只是它依赖了本地物理机不要关机为前提。对于外网访问内网场景,本地内网搭建服务器后需要提供到互联网上连接访问的,比较简便的
访客 评论于:03-01刘中宜 评论于:11-01
访客 评论于:06-03
AB资源网 评论于:05-08
AB资源网 评论于:11-22
AB资源网 评论于:11-22
頹廢了悲伤 评论于:11-15
南风知我意 评论于:11-15
心若冰凝 评论于:11-15