上面的函数返回一个整数,代表下面显示的常量中的一个或多个常量之和。
要知道某文件是否具有上述的属性,可以使用AND运算符来比较GetAttr函数的结果和常量数值。如果函数返回一个非零数值,那么该文件或文件夹具有和你测试的属性一样的属性。
C:MsDos.sys的属性是什么呢?你可以在立即窗口里快速获得:
?getattr("C:MsDos.sys") AND vbReadOnly
1
?getattr("C:MsDos.sys") AND vbHidden
2
?getattr("C:MsDos.sys") AND vbSystem
4
?getattr("C:MsDos.sys") AND vbArchive
32
现在,我们来将这些信息一起放在一个过程里:
1. 插入新模块,并重命名为GetAttrFunction
2. 输入下述过程GetAttributes:
Sub GetAttributes()
Dim attr As Integer
Dim msg As String
attr = GetAttr("C:MSDOS.SYS")
msg = ""
If attr AND vbReadOnly Then msg = msg & "Read-Only (R)"
If attr AND vbHidden Then msg = msg & Chr(10) & "Hidden (H)"
If attr AND vbSystem Then msg = msg & Chr(10) & "System (S)"
If attr AND vbArchive Then msg = msg & Chr(10) & "Archive (A)"
MsgBox msg, , "MSDOS.SYS"
End Sub
3. 当你运行上面的过程时,你将看到如图8-1的信息框
图8-1 使用GetAttr函数可以获得任何文件的属性
GetAttr函数的相反函数是SetAttr函数,它允许你设置一个文件或文件夹的属性。语法如下:
SetAttr 文件路径名, 属性
文件路径名确定你要设置的文件或文件夹,第二个参数,属性,是一个或多个你要设置的属性常量。
参见表8-1本章前面介绍的常量清单。
假设你有一个叫做“C:stamps.txt”的文件,并且要设置两个属性,“只读”和“隐藏”。在立即窗口里输入下述指令来设置文件属性(可以找个你硬盘上存在的文件来试验):
SetAttr "C:stamps.txt", vbReadOnly + vbHidden
在上面的语句中,Path是新的缺省文件夹名称。Path可以包含驱动器名称。如果Path没有包括驱动名称,那么缺省文件夹将会更改为当前驱动。当前驱动不变。
假设缺省文件夹为“C:DOS”,语句:
ChDir "D:MyFiles"
将缺省文件夹更改为“D:MyFiles”,然而,当前驱动仍然是C盘。
要更改当前驱动的话,你就应该使用ChDrive语句,按如下格式:
ChDrive 驱动
“驱动”是你将要设置的新的缺省驱动名称。例如,在立即窗口里输入下述指令将缺省驱动设置为D驱或者E驱:
ChDrive "D"
或者
ChDrive "E"
如果你指向一个并不存在的驱动,你就会看到一个信息框“设备不可用”
Julia 是个灵活的动态语言,适合科学和数值计算,性能可与传统静态类型语言媲美。由于 Julia 的编译器与像 Python 或者 R 语言的...
Julia 提供一系列控制流:复合表达式 : begin 和 (;)条件求值 : if-elseif-else 和 ?: (ternary operator)短路求值 : , || 和...
在ASP.NETWebPages类参考手册中,我们列出了需要使用的一些方法,以及对这些方法的描述。 ASP.NET 类参考手册 方法描述AsBool(),...
语句在循环中会被重复执行。循环语句允许我们多次执行一个语句或语句组。 For 循环 如果您需要重复执行相同的语句,您可以设定一...
字符串或串(String)是由数字、字母、下划线组成的一串字符。 Lua 语言中字符串可以使用以下三种方式来表示:单引号间的一串字符...