VB文件操作函数语句
VBA文件操作及目录操作

VBA文件操作及目录操作vba包含了许多用于文件操作的语句和函数,可以满足绝大多数情况下的文件操作要求。
下面我们按照操作目的进行一一介绍。
(一)文件处理语句语法:nameoldpathnameasnewpathname功能:重命名一个文件、目录、或文件夹,移动一个文件。
说明:在一个已打开的文件上使用name,将会产生错误。
进行文件操作时,一定要注意错误处理。
示例:onerrorresumenext'错误处理name\'重命名name\'移动文件name\'跨驱动器移动并重命名文件特别注意:name无法移动一个目录或文件夹。
2、filecopy语句语法:filecopysource,destination功能:复制一个文件。
表明:如果对一个已关上的文件采用filecopy语句,则可以产生错误。
示例:filecopy\'从f盘激活test.xls至e盘3、kill语句语法:killpathname功能:从磁盘中删除文件。
表明:kill积极支持多字符(*)和单字符(?)的统配iou选定多重文件。
如果采用kill去删掉一个已关上的文件,则可以产生错误。
示例:kill\’删掉f盘的test.xls文件kill\'删掉f盘所有xls文件4、getattr函数语法:getattr(pathname)功能:获取一个文件、目录、或文件夹的属性。
返回一个integer值。
返回值由getattr回到的值,就是下面这些属性值的总和:常数值描述vbnormal0常规vbreadonly1只读vbhidden2隐藏vbsystem4系统文件vbdirectory16目录或文件夹vbarchive32档案文件vbalias64指定的文件名是别名。
只在macintosh中可用。
表明:若必须推论与否设置了某个属性,在getattr函数与想获知的属性值之间采用and运算符与逐位比较。
VBA操作文件的方法(带目录)

Excel-VBA操作文件四大方法Excel-VBA操作文件四大方法 (1)一、利用Excel对象来处理文件 (4)1、打开Excel文件 (4)2、打开文本文件 (4)3、打开其他文件 (5)4、保存文件 (6)5、关闭文件 (7)6、综合实例 (7)7、总结 (8)二、利用VBA文件处理语句来处理文件 (9)(一)文件处理 (9) 语句 (9)2、FileCopy 语句 (9)3、Kill 语句 (10)4、GetAttr 函数 (10)5、SetAttr 语句 (11)6、FileLen 函数 (11)7、FileDateTime 函数 (11)(二)目录处理 (11)1、CurDir 函数 (11)2、ChDir 语句 (12)3、ChDrive 语句 (12)4、Dir 函数 (12)5、MkDir 语句 (14)6、RmDir 语句 (15)(三)处理文本文件 (15)1、Open 语句 (15)2、Close 语句 (16)3、Reset 语句 (16)4、FreeFile 函数 (16)5、EOF 函数 (17)6、LOF 函数 (17)7、Loc 函数 (17)8、Input # 语句 (17)10、Line Input # 语句 (19)11、Input 函数 (20)12、Print # 语句 (21)13、Width # 语句 (22)(四)处理二进制文件 (23)1、Put 语句 (23)2、Get 语句 (23)3、Seek 语句 (24)4、Seek 函数 (24)(五)总结 (25)三、利用FileSystemObject对象来处理文件 (25)(一)准备工作 (26)(二)FileSystemObject对象的方法 (27)1、GetDrive 方法 (27)2、GetDriveName 方法 (27)3、GetExtensionName 方法 (27)4、GetBaseName 方法 (27)5、GetAbsolutePathName 方法 (28)6、GetFile 方法 (28)7、GetFileName 方法 (28)8、GetFolder 方法 (29)9、GetSpecialFolder 方法 (29)10、GetParentFolderName 方法 (29)11、GetTempName 方法 (29)12、BuildPath 方法 (30)13、CreateFolder 方法 (30)14、CopyFolder 方法 (30)15、MoveFolder 方法 (31)16、DeleteFolder 方法 (31)17、FolderExists 方法 (32)18、DriveExists 方法 (32)19、FileExists 方法 (32)20、CreateTextFile 方法 (32)21、OpenTextFile 方法 (33)22、CopyFile 方法 (33)23、MoveFile 方法 (34)24、DeleteFile 方法 (34)(三)处理驱动器 (34)(四)处理文件夹 (35)1、获取文件夹的信息 (35)(五)处理文件 (37)1、获取文件的信息 (37)2、File对象的方法 (37)(六)处理文本文件 (37)1、打开或创建文本文件 (37)2、读取文件 (38)3、写入数据到文件 (40)4、关闭文件 (41)(七)总结 (41)四、利用API函数来处理文件 (41)(一)处理驱动器及目录 (42)1、GetLogicalDrives (42)2、GetDriveType (43)3、GetDiskFreeSpaceEx (44)4、CreateDirectory, CreateDirectoryEx (46)5、RemoveDirectory (47)6、SetCurrentDirectory (47)7、GetSystemDirectory (47)(二)处理文件 (48)1、CreateFile (50)2、lcreat (52)3、lopen (53)4、GetFileTime (53)5、CopyFile (54)6、MoveFile, MoveFileEx (55)7、DeleteFile (55)8、ReadFile (56)9、WriteFile (56)10、SHFileOperation (57)(三)总结 (58)在我们日常使用Excel的时候,不仅会用到当前Excel文件的数据,还经常需要访问其他的数据文件。
vb6中copyfile用法

vb6中copyfile用法VB6中CopyFile用法简介CopyFile函数是VB6中用于复制文件的一个重要函数。
它可以将一个文件从一个位置复制到另一个位置,同时还可以指定是否覆盖已存在的文件。
使用语法Public Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVa l lpNewFileName As String, ByVal bFailIfExists As Long) As Long参数说明: - lpExistingFileName:被复制的文件的路径和文件名。
- lpNewFileName:新文件的路径和文件名。
- bFailIfExists:指示如果目标文件已存在时是否覆盖。
0表示覆盖,非0表示不覆盖。
示例用法基本用法Dim sourceFile As StringDim destinationFile As StringsourceFile = "C:\Temp\"destinationFile = "C:\Temp\"CopyFile sourceFile, destinationFile, 0上述代码将把C:\Temp\文件复制到C:\Temp\。
覆盖已存在文件Dim sourceFile As StringDim destinationFile As StringsourceFile = "C:\Temp\"destinationFile = "C:\Temp\"CopyFile sourceFile, destinationFile, 1上述代码将把C:\Temp\文件复制到C:\Temp\,如果``已存在,则会被覆盖。
第八章vb计算机

读一行到变量中,但读出的数据不包含回车换行符,主要 用来读取文本文件。 INPUT$(读取字符数,#文件号) 随意读取指定数目字符。
5. 函数 LOF(文件号):返回文件的长度(总字节数)。
EOF(文件号):返回文件指针是否到末尾的值。指针在文 件尾时,EOF函数为True,否则为False。
2013年7月17日星期三 长春师范学院城市与环境科学学院
2. 写入命令 (1)Print #文件号,[输出列表] 其中,输出列表的格式与Print方法完全一样。 例如:保存文本框的内容
假定文本框的名称为Text1,文件名为TEST.Doc。
方法1:把整个文本框的内容一次性地写入文件。
Open “c:\TEST.doc" For Output As #1 Print #1, Text1 Close #1
Visual Basic程序设计
第八章 数据文件
8.1 文件系统控件 8.2 文件概述
8.3 顺序文件
8.4 随机文件
8.5 二进制文件
8.6 常用文件操作语句和函数
2013年7月17日星期三
长春师范学院城市与环境科学学院
Visual Basic程序设计
8.1 驱动器、目录和文件列表框
1. 驱动器列表框 Drive属性:包含当前选定的驱动器名,只能在运行时设置。 [对象.]Drive [= drive] Change事件:选择一个新的驱动器或通过代码重新设置Drive属性 引发Change事件。
2013年7月17日星期三 长春师范学院城市与环境科学学院
Visual Basic程序设计
8.3.3 应用举例
例8.3 设计一个文件加密程序。
例8.4 编写顺序文件读写程序。 单击“添加数据”,则将一个学生的学号、姓名和成绩添加 到Score.txt文件中 单击“读取数据”,则从文件读取数据并计算总分和平均成 绩,最后送入文本框。
第七章 VB中的文件操作

第七章VB中的文件操作7.1文件系统控件1.文件系统控件种类(1)驱动器列表框(DriveListBox):用来显示当前机器上的所有盘符(2)目录列表框(DirListBox):用来显示当前盘上的所有文件夹(3)文件列表框(FileListBox):用来显示当前文件夹下的所有文件名2.重要属性3.重要事件7.2文件的读写1.文件的有关概念记录:计算机处理数据的基本单位,由若干个相互关联的数据项组成。
相当于表格中的一行。
文件:记录的集合,相当于一张表。
文件类型:顺序文件、随机文件、二进制文件。
访问模式:计算机访问文件的方式,VB中有顺序、随机、二进制三种访问模式。
2.顺序访问模式顺序访问模式的规则最简单,指读出或写入时,从第一条记录“顺序”地读到最后一条记录,不可以跳跃式访问。
该模式专门用于处理文本文件,每一行文本相当于一条记录,每条记录可长可短,记录与记录之间用“换行符”来分隔。
顺序文件的写入步骤:打开、写入、关闭;读出步骤:打开、读出、关闭。
(1)打开文件打开文件的命令是Open,格式为:Open“文件名”For模式 As [#] 文件号[Len=记录长度]说明:1)文件名可以是字符串常量也可以是字符串变量2)模式可以是下面之一:OutPut:打开一个文件,将对该文件进行写操作Input:打开一个文件,将对该文件进行读操作Append:打开一个文件,将在该文件末尾追加记录3)文件号是一个介于1-511之间的整数,打开一个文件时需要指定一个文件号,这个文件号就代表该文件,直到文件关闭后这个号才可以被其他文件所使用。
可以利用FreeFile()函数获得下一个可以利用的文件号。
例:Open "D:\sj\aaa" For Output As #1意思是:打开D:\SJ下aaa文件供写入数据,文件号为#1(2)写操作将数据写入磁盘文件所用的命令是:Write# 或Print#。
语法格式:1) Print #文件号,[输出列表]例:Open “D:\SJ\TEST.DAT”For Output As #1Print #1,Text1.Text '把文本框的内容一次性写入文件Close #12)Write #文件号,[输出列表]其中的输出列表一般指用逗号,分隔的数值或字符串表达式。
vb6的文件操作

总结一下VB6的文件操作,省得要用的时候又到处查找。
一、文件类型1、顺序文件(文本文件):以ASCII码形式存放的文件。
似乎还有Unicode码存放的,有没有BCD码的呢?2、随机访问文件:这种文件格式很有特点:文件中存放若干条等长的单元(也可以说是记录);每个单元包含同类型、等数量、等长度的数据项;文件中,除了字符串以ASCII码存放之外,其它都以二进制形式直接存放,节省存储空间。
这种文件类型非常适合存储需要和软件交互的数据,如结构体数据、类数据等。
这也是VB特有的文件访问方式。
3、二进制文件:以二进制形式存放,PE程序文件一般都是这个类型。
二、操作方法1、顺序文件打开:Open 文件名For Input | Output | Append As [#]文件号Input打开读入,文件不存在报错。
Output打开覆盖写入,文件不存在则创建。
Append打开追加写入,文件不存在则创建。
读:Line Input #文件号, 字符串变量读一行数据存入字符串变量,数据包括空格、Tab、等,不包括回车符和换行符,所以要显示文件的换行效果,要手动添加回车符和换行符(vbCrLf)Input #文件号, 变量1[, | ;] [变量2]...这种方式可以存入多个变量,而且变量类型不限于字符串型。
写:Print #文件号, 参数1[, | ;] [参数2]...将各参数逐个写入文件。
参数间用逗号隔开时,文件中相应插入多个空格;用分号隔开时,插入一个空格。
可以用Spc(n)、Tab(n)等进行排版。
Write #文件号, 参数1[, | ;] [参数2]...这种写入方式将自动添加界定符,对不同参数的类型加以界定。
2、随机访问文件打开:Open 文件名[For Random] As [#]文件号Len = 记录长度 For Random可以省略,文件不存在则创建,读写都是这种打开方式。
Len是文件中记录的一条长度,用以识别记录的开始与结束,经常用Len(记录名)来获取长度。
vb6.0 文件操作 Dir命令 的使用方法

vb6.0中文件操作 Dir 的使用方法
If Dir("C:\test.xls") <>"" then
MsgBox "文件存在" '当C盘根目录存在test.xls文件时提示“文件存在”
else
MsgBox "文件不存在"
End If
--------------------------------------------------------------------------------
提示 由于文件名并不会以特别的次序来返回,所以可以将文件名存储在一个数组中,然后再对这个数组排序。
vbHidden 2 指定无属性的隐藏文件
VbSystem 4 指定无属性的系统文件
vbVolume 8 指定卷标文件;如果指定了其它属性,则忽略vbVolume
vbDirectory 16 指定无属性文件及其路径和文件夹。
注意 这些常数是由 VBA 所指定的,在程序代码中的任何位置,可以使用这些常数来替换真正的数值。
说明
VB Open 函数详解 打开、关闭、读、写文件

(一)打开和关闭文件1、顺序文件打开顺序文件,我们可以使用Open语句。
它的格式如下:Open pathname For [Input |Output |Append] As [#]filenumber [Len = buffersize] 说明:(1)参数pathname 表示要打开的文件名,文件名可以包含有驱动器和目录(2)Input Output 和Append用于设置顺序文件的打开方式。
其中,Input表示从打开的文件中读取数据。
以这种方式打开文件时,文件必须存在,否则会产生错误。
Output表示向打开的文件中写入数据。
以这种方式打开文件时,文件中原有的数据将被覆盖,新的数据将从文件开始写入。
如果文件不存在,则创建一个新文件。
Append表示向打开的文件中添加数据。
以这种方式打开时,文件中原有的数据将被保留,新的数据将从文件为开始添加。
如果文件不存在,则创建一个新文件。
(3)As[#]filenumber 子句用于为打开的文件指定文件号.对文件进行读写操作时,要用文件号表示该文件.文件号是介于1~511之间的整数,既可以是数字,又可以是变量.也可以省略不用.(4)当在文件与程序之间拷贝数据时,Len=buffersize子句指定缓冲区的字符数.例如:Open App.Path + "\test.dat" For Output As 1Open App.Path + "\test.dat" For Output As 1这两句代码在当前应用程序所在目录下创建了一个名为test.dat的文本文件,分配文件号为1.Open App.Path + "\test.dat" For Input As [#]filenumber这条语句是从文本文件中读取数据.Open App.Path + "\test.dat" For Append As [#]filenumber这条语句则是像文本文件中添加数据2、随机文件操作随机文件之前,首先必须定义用于保存数据项的记录类型.该记录是用户自定义数据类型,他们是随机文件中存储数据的基本结构.例如:Type StudentNo As IntegerName As String * 20age As IntegerEnd TypeDim Stud As Student …定义一个可以存放学生材料的变量随机文件中,所有的数据都将保存到若干个结构为Student类型的记录中, 而从随机文件中读出的数据则可以存放到变量Stud中.之后我们就可以打开并读写文件了.下面是打开随机文件的语法格式:Open filename For Random as [#]filenumber Len = Reclength说明:(1)参数filename 和filenumber 分别表示文件名或文件号.(2)关键字Random 表示打开的是随机文件(3)Len子句用于设置记录长度,长度由参数Reclength指定.Reclength的值必须大于0,而且必须与定义的记录结构的长度一致.计算记录长度的方法是将记录结构中每个元素的长度相加.例如前面声明的Student的长度应该是2+20+2=24字节.打开一个记录类型为Student 的随机文件的方法是:Open "c:\Student.txt " For Random As #1 Len = 253、二进制文件打开二进制文件的语法格式如下:Open pathname For Binary As [#]filenumber说明:(1) 参数filename 和filenumber 分别表示文件名或文件号.(2)关键字Binary 表示打开的是二进制文件(3)对于二进制文件,不能指定字节长度.每个打开的二进制文件都有一个自己的指针,文件指针是一个数字值,指向下一次读写操作的文件中的位置.二进制文件中的每个”位置”对应一个数据字节,因此,有n个字节的文件,就有1到n个位置.我们可以用Seek()函数返回当前的文件指针位置(即下一个要读写的字节);用Loc()函数返回上一次读写的字节位置,除非用Seek语句移动了指针,Loc()返回值总比Seek()的小1.我们来看下面的例子:Open “student.txt” for Binary as #1该语句用二进制的方式打开了student.txt文件.(二)读文件1、顺序文件顺序文件的读取有三种方式:(1)Line Input # 语句该语句从打开的顺序文件中读取一行数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
End Type 1、计算文件“D:\temp.txt”的长度
文件访问函数和语句
教学过程 二、LOF函数 语法: LOF (文件号) 功能: 返回一个长整型数据,表示已经用Open语句 打开的文件长度,单位是字节 注意: 使用LOF函数之前应先使用Open语句打开文 件
文件访问函数和语句
新课导入 在文件操作中有时需要设置读写的位置
教学目标 掌握Seek语句的语法与功能
文件访问函数和语句
文件访问函数和语句
知识小结 1、EOF函数 指针到达文件末,EOF返回True,否则返回False
2、FreeFile函数 随机产生一个介于1-511之间未使用的文件号
文件访问函数和语句
当堂检测 1、EOF用来判断_________是否到了文件末
2、FreeFile函数参数为0,则随机产生一个介于 ________之间未使用的文件号
Line Input #1, idate Print idate Loop Close #1 End Sub 将上程序改为直到型循环
文件访问函数和语句
教学过程 二、Freefile函数 语法: FreeFile(随机种子) 功能: 返回一个 整型数据,用来随机产生一个表示Open语句可以 打开的下一个文件的文件号 说明: 1、随机种子可选,指定一个范围,FreeFile函数返回该数 范围内一个数作为有效文件号,省略种子,默认种子为0 2、0:1-255 1:256-511 3、产生一个未被使用的文件号
2、Len函数可以计算字符串中____________,也可以 计算变量的________________
文件访问函数和语句
新课导入 想要读取一个顺序文件的全部内容,必须检测是否读取 到了文件末,如何来判断是否到文件末呢?
教学目标 掌握EOF函数的语法和功能
文件访问函数和语句
教学过程 一、EOF函数 语法:
文件访问函数和语句
教学过程 一、FileLen函数 示例1: dim Fsize as long Fsize = FileLen(“d:\temp.txt”)
程序功能:返回“d:\temp.txt”的字节数
文件访问函数和语句
教学过程 一、FileLen函数 练习1:有随机文件“D:\temp.txt”,不打开文 件,计算随机文件中记录的总数
教学过程 三、LOF函数、FileLen函数、Len函数
LOF
File
文件号
计算文 件长度
Long 字节
文件名 字符串或变量
计算文 计算字符串字符 件长度 个数/变量字节数
Long 字节
Long 个/字节
文件访问函数和语句
当堂检测 1、FileLen函数的参数是__________,LOF函数的参 数是_____________,它们都是用来返回文件的 _________,单位是___________
Line Input #1, idate Print idate Loop Close #1 End Sub
文件访问函数和语句
教学过程 一、EOF函数 示例: Private Sub Form_click() Dim idate As String Open "d:\temp.txt" For Input As #1 Do until EOF(1)
文件访问函数和语句
教学过程 二、LOF函数 练习2:有随机文件“D:\temp.txt”,使用LOF 计算随机文件中记录的总数
Private Type student name As String * 5 sex As String * 2 age As Integer
End Type
文件访问函数和语句
文件访问函数和语句
教学过程 二、Freefile函数 示例: Dim i As Integer i = FreeFile(1) Open "d:\temp.txt" For Output As #i Print i Close #i
文件访问函数和语句
教学过程 二、Freefile函数 练习1: 在D盘根目录下创建一个名为“test.txt” 的文件,使 用FreeFile 动态分配文件号 open “D:\test.txt” for input as #freefile close #freefile Dim sz as integer sz=freefile Open”D:\temp.txt” for input as #sz Close #sz
文件访问函数和语句
教学过程 一、FileLen函数 语法: FileLen(文件名) 功能: 返回一个表示文件长度的长整型数据,单位 是字节
文件访问函数和语句
教学过程 一、FileLen函数 说明: 1、文件名是一个字符串表达式,包含驱动器、 目录和文件名 2、使用FileLen函数不需要打开文件;否则使 用LOF函数
文件访问函数和语句
任课教师:赵慧
文件访问函数和语句
新课导入 计算文件长度,必须要打开文件,因为要使
用文件号,那如果只是想计算文件长度,不想进 行读写操作,打开文件就显得有点多余。
能不能不打开文件就能知道文件长度呢?
文件访问函数和语句
教学目标
1、掌握FileLen函数的语法及功能 2、了解FileLen函数、LOF函数和Len函数的区 别
EOF(文件号) 功能:
返回一个 布尔或逻辑型数据,表明是否已经到达为 Random 或顺序 Input 打开的文件的结尾。 说明:
1、文件号与Open语法打开的文件号相对应 2、遇到文件末返回True,否则返回False
文件访问函数和语句
教学过程 一、EOF函数 示例: Private Sub Form_click() Dim idate As String Open "d:\temp.txt" For Input As #1 Do While Not EOF(1)