File对象

描述

提供访问一个文件的所有属性

方法

Copy Method | Delete Method | Move Method | OpenAsTextStream Method

属性

Attributes Property | DateCreated Property | DateLastAccessed Property | DateLastModified Property | Drive Property | Name Property | ParentFolder Property | Path Property | ShortName Property | ShortPath Property | Size Property | Type Property

语法

使用FSO对象GetFile方法方法返回一个File对象,下面展示如何实例化一个文件:

Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
'创建c:\testfile.txt,并写入一串字符
Set NewFile = fso.CreateTextFile("c:\testfile.txt", True)
NewFile.WriteLine("This is a test.")
NewFile.Close
'实例化testfile文件
Set MyFile = fso.GetFile("c:\testfile.txt")

file对象方法介绍

Copy 方法

描述

复制文件或文件夹

语法

object.Copy( destination[, overwrite] )

参数

object必要参数.file对象或floder对象的名称.
destination必要参数.指定文件文件夹复制到达的位置.不允许特殊字符.
overwrite可选参数.是否覆盖已存在的文件或文件夹,默认值为True.
Dim fso,MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
'创建c:\testfile.txt,并写入一串字符
Set NewFile = fso.CreateTextFile("c:\testfile.txt", True)
NewFile .WriteLine("This is a test.")
NewFile .Close
'复制c:\testfile.txt内容到c:\windows\desktop\test2.txt
Set MyFile = fso.GetFile("c:\testfile.txt")
MyFile.Copy ("c:\windows\desktop\test2.txt")

Delete方法

描述

删除一个指定的文件或文件夹

语法

object.Delete(force)

参数

object必要参数.file对象或floder对象的名称.
force可选参数.删除只读文件或文件夹时为True,默认是False.
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
'创建c:\testfile.txt,并写入一串字符
Set NewFile = fso.CreateTextFile("c:\testfile.txt", True)
NewFile.WriteLine("This is a test.")
NewFile.Close
'删除testfile文件
Set MyFile = fso.GetFile("c:\testfile.txt")
MyFile.Delete()

Move方法

描述

把一个指定的文件或文件夹从一个地方移动到另一个地方

语法

object.Move(destination)

参数

object必要参数.file对象或floder对象的名称.
destination必要参数.移动文件文件夹到达的位置.不允许特殊字符.



Move方法与FileSystemObject.MoveFile或FileSystemObject.MoveFolder功能相同.


OpenAsTextStream方法

描述
打开一个特定文件返回一个 TextStream 对象,用来从文件读取,写入和添加信息。
语法
object.OpenAsTextStream([iomode, [format]])

参数

object必要参数.file对象的名称.
iomode可选参数.指定I/O模式,可以是三个常量ForReading, ForWriting, 或ForAppending.
format

可选参数.三个Tristate值之一,指定打开文件的格式,省略则以ASCII方式打开.




iomode参数可以设置为以下任何一项:

常量描述
ForReading1只读方式打开文件,不能写入.
ForWriting2打开文件用来写入,如果文件重名,会覆盖靠前的那个
ForAppending8打开文件在末尾追加.

format参数可以设置为以下任何一项:

常量描述
TristateUseDefault-2使用系统默认方式打开文件.
TristateTrue-1使用Unicode编码打开文件.
TristateFalse0使用ASCII编码打开文件.

OpenAsTextStream方法提供了与 FileSystemO对象OpenTextFile方法功能相同。但OpenAsTextStream方法可用来向一个文件写入。下面展示如何向一个文件中写入内容:

Dim fso,MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
'创建c:\testfile.txt,并写入一串字符
Set NewFile = fso.CreateTextFile("C:\Users\web\Desktop\test.file",True)
NewFile.WriteLine("This is a test.")
NewFile.Close
'将test.file文件实例化为一个TextStream对象,并设为写入模式
Set MyFile = fso.GetFile("C:\Users\web\Desktop\test.file")
Const ForWriting = 2
set objTextStream = MyFile.OpenAsTextStream(ForWriting)
'向文件中写入"Write into a file not txt"
objTextStream.WriteLine("Write into a file not txt")
objTextStream.Close
 
    

file对象属性介绍

AttributesProperty

描述

返回一个文件或文件夹的属性

语法

object.Attributes [= newattributes]

返回值含义如下

Constant

描述

Normal

0

普通文件.未设置任何属性.

ReadOnly

1

只读文件.属性是read/write.

Hidden

2

隐藏文件.属性是read/write.

System

4

系统文件.属性是read/write.

Volume

8

磁盘驱动器卷名. 属性是read-only.

Directory

16

文件夹或目录.属性是read-only.

Archive

32

存档,文件被修改过.属性是read/write.

Alias

1024

快捷方式或链接.属性是read-only.

Compressed

2048

压缩文件.属性是read-only.

其余属性:

属性名称描述语法
DateCreated Property返回一个文件或文件夹的创建日期,只读属性.object.DateCreated
DateLastAccessed Property返回一个文件或文件夹最后一次被访问的时间.object.DateLastAccessed
DateLastModified Property

返回一个文件或文件夹最后一次被修改的时间.

object.DateLastModified

DriveProperty

返回一个文件或文件夹所在驱动器的字符.object.Drive

Name Property


修改或返回指定文件或文件夹的名称.object.Name [= newname]

ParentFolder Property

找到指定文件或文件夹的父份文件夹,并返回一个Folder对象.object.ParentFolder

Path Property

返回指定文件、文件夹或驱动器的路径.


object.Path

ShortName Property

返回一个短文件名称用于方便编程.object.ShortName

ShortPath Property

返回一个短路径名称用于方便编程.object.ShortPath

Size Property

返回文件大小,单位字节.object.Size

Type Property

返回文件类型.object.Type

下面通过实例展示各个属性:

Dim fso,file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.GetFile("C:\Users\web\Desktop\Red_Hat_Enterprise_Linux-6-Deployment_Guide-en-US.pdf")
str ="File Attributes: "&file.Attributes&vbcrlf
str =str&"File Created Date: "&file.DateCreated&vbcrlf
str =str&"File LastAccessed Date: "&file.DateLastAccessed&vbcrlf
str =str&"File LastModified Date: "&file.DateLastModified&vbcrlf
str =str&"File Name: "&file.Name&vbcrlf
str =str&"File ShortName: "&file.ShortName&vbcrlf
str =str&"File Drive: "&file.Drive&vbcrlf
str =str&"File ParentFolder : "&file.ParentFolder &vbcrlf
str =str&"File Path: "&file.Path&vbcrlf
str =str&"File ShortPath: "&file.ShortPath&vbcrlf
str =str&"File Size: "&file.Size/(1024^2)&"MB"&vbcrlf
str =str&"File Type: "&file.Type&vbcrlf
Msgbox str

返回

092611330.jpg

Attributes属性的值叠加的,假设一个系统文件属性是只读且隐藏,那么文件的属性值应该是:4(systemfile)+1(Read-only)+2(Hidden)=7