050207.htm
来自「提供一个VB学习教程,入门级。来源于网上」· HTM 代码 · 共 202 行 · 第 1/2 页
HTM
202 行
Do While lxn <> "" 如果还有满足"lxn*.*"特征的文件时(不然调用DIR返回空 List1.AddItem lxn 把查到的文件名放入列表框中<br>
lxn = Dir() 继续查找下一个<br>
Loop<br>
End Sub <br>
"属性"参数有以下几个:<br>
vbNormal 0 常规 (缺省)<br>
vbReadOnly 1 只读<br>
vbHidden 2 隐藏 <br>
vbSystem 4 系统文件 <br>
vbVolume 8 磁盘卷标;如果指定,则其它属性都会忽略 <br>
vbDirectory 16 目录或文件夹 <br>
vbArchive 32 存档<br>
注:如果给Dir函数指定参数,Dir不仅会返回指定属性类型的文件,还会返回所有属性值比它小的文件,如lxn=dir("c:\",16)不仅返回文件夹,还将返回常规(属性为0),只读(为1),隐含(为2)……等属性值小于16的全部文件。"属性"参数的设置值最大可为63。用0+1+2+4+8+16+32得到,这样将返回所有的文件(夹),如只显示文件夹,而不显示任何文件,先设"属性"参数为16,再结合一个函数GetAttr,例下:<br>
lxn = Dir("c:\", 16) 此例只能显示根目录下的文件(夹),若要查多级子目录<br>
Do While lxn <> "" 下的文件(夹),可采用将查到的文件夹名又累加到Dir<br>
If lxn <> "." And lxn <> ".." Then 路径中去的办法,嵌套进行。<br>
If GetAttr("c:\" & lxn) = 16 Then<br>
List1.AddItem lxn<br>
End If<br>
End If<br>
lxn = Dir()<br>
Loop<br>
其中有个函数GetAttr:格式:整型变量=GetAttr(路径及文件名)<br>
lxn=GetAttr("c:\windows"),lxn就等于16(windows是文件夹嘛)<br>
返回一个文件或文件夹的属性值,是只读的还是隐藏或是文件夹等,用一个整数值表示,如下:<br>
0:常规文件<br>
1:只读属性文件;<br>
2:隐藏文件;<br>
4:系统文件:<br>
16:文件夹。<br>
32:存档属性文件<br>
返回值就是这些值的和,如有个文件lxn既是只读又是隐藏,那么 a=getattr("c:\lxn"),a就等于3。<br>
★ 有关取得时间信息的函数(它们返回的都是integer型数),看下面的例子一下便懂。<br>
年 = Year(#3/22/2000#) "年"就等于2000<br>
月 = Month(Date) 月=6<br>
日 = Day(Date) 日=23 (今天的日期嘛,用中文当变量,怎么样?)<br>
小时 = Hour(#7:03:44 AM#) 小时=7(AM表示上午) <br>
分钟 = Minute(Time) 分钟=12<br>
星期=WeekDay(Date) 返回1代表星期日,返回2代表星期一等等。<br>
秒种 = Second(#7:43:12 PM#) 秒钟=12(PM表示下午)<br>
此外还有三个直接的函数:Now 获得当前的日期和时间。如:01-9-13 16: 09: 42.<br>
Date 获取当前日期。如:01-9-13<br>
Time 获取当前时间,如:16: 09: 42</p>
<p>★ 将一个字符串或值为字符串的变体变量转换为整型变量,首先要确定该字符串内存储的是否为纯"数字"字符,可用IsNumeric函数来检测,如:<br>
if isnumeric(lxn)=true then a=cint(lxn)</p>
<p>★ 文件操作的一部分函数:<br>
读取当前目录函数:Curdir函数。格式:Curdir(驱动器)。例:Curdir("c")返回C驱动器的当前目录,如果驱动器省略,则返回当前驱动器的当前目录。<br>
复制文件的FileCopy语句,格式:<br>
FileCopy 源文件路径及文件名,目标路径及文件名<br>
FileCopy "e:\games\Bh2k\Bh2000.exe", "c:\windows\desktop\bb.exe" <br>
注:不能复制正打开的文件。<br>
设置文件属性SetAttr函数,读取文件属性GetAttr函数:设置文件属性格式:<br>
SetAttr 文件路径及名称,属性值<br>
SetAttr "c:\windows\desktop\bb.exe", 1<br>
字符串的比较:一般在VB中缺省的比较是区分大小写的,如A<a,B<b,而我们有时需要不区分大小写的比较,这时可在模块的顶部声明段用"Option Compare Text"关健字来声明是"文本比较模式",(区分大小写的是二进制比较:Option Compare Binary ).<br>
★ 处理字符串的函数:<br>
去空格:LTrim(字符串):去掉字符串左端空格;<br>
RTrim(字符串):去掉字符串右端空格;<br>
Trim(字符串):去掉字符串两端空格。<br>
查找:InStr(查找的起点,父字符串,要查找的子字符串,0或1或2),返回父字符串中第1次出现要查找子串的位置值(为整型值),最后"0或1或2"为参数,0表示区分大小写,1和2表示忽略大小写。查找起点从父串开头最小1开始。如:<br>
lxn = InStr(1, "abcdeffgh", "fgh", 1) lxn等于7。<br>
其实用instr(父串,子串)就可以了,如lxn=Instr("abcdeffgh","fgh").<br>
Filter:搜索字符串数组中的特定子串,格式:<br>
filter(一维字符串数组,要查找子串)<br>
s = Filter(lxn, "bc")<br>
返回一个新的数组,其中包含多个查找到的满足条件的字符串。怎样的"满足条件"?如上面lxn有多个元素,其中有lxn(9)="abc",lxn(12)="bcd",这2个就是满足条件,而lxn(3)="b"就不满足了。有时我们不知道它会返回多少个元素,可将查询结果赋给一个变长数组。如上面应先dim s() as string.返回的s有:s(0)="abc",s(1)="bcd". <br>
Join:将字符串数组组合成一个字符串,格式:<br>
新字符串=Join(一维字符串数组,元素间分隔符) <br>
a$=join(lxn,"")<br>
注:元素间分隔符是指定每两个原来的"元素"间的分隔符号,如果缺省,则用空格分开,如果为"",则紧密连接,如有个lxn有"abc","bcd","cde"三个元素,那么a$=join(lxn),a$就为"abc bcd cde",而a$=join(lxn,""),返回"abcbcdcde",而<br>
a$=join(lxn,";")则返回"abc;bcd;cde"<br>
split:将字符串分隔成字符串数组,格式:<br>
split(字符串,标识元素边界的字符,限定元素个数)<br>
如果元素个数设为-1,则返回全部子字符串(元素)。<br>
StrReverse:反转字符串,格式:StrReverse(字符串),很简单。如a$=StrReverse("abcd"),a$就等于dcba.<br>
Replace:对字符串中特定子串进行查找并替换,格式:<br>
新字符串=Replace(原字符串,查找子串,替换为子串,查找起点,替换次数) 查找起点若缺省,则从原字符串开头起查找子串,替换次数若设为-1,则将查到子串全部进行替换(缺省)。例如:<br>
a$ = Replace("lxnlxm,my name is lxn", "lxn", "李新宁"),将lxn换成李新宁,a$等于"李新宁lxm,my name is 李新宁"</p>
<p>★ 文件操作函数补充:FileAttr:返回用Open打开文件的模式。<br>
FileDataTime:检索文件的日期,时间。<br>
FileLen:返回文件的字节长度。相当于LOF,只是filelen后可指定任一文件名,而LOF后是"在程序中用Open打开的文件号"。<br>
FreeFile:返回下一个可用的文件句柄。<br>
Loc:返回当前文件位置。<br>
Lock:锁定文件。<br>
LOF:返回打开文件的长度。<br>
Name…As…重新命名文件,目录。<br>
Reset:关闭所有open语句打开的文件。格式: Reset<br>
Seek:返回当前文件位置。<br>
UnLock:对文件进行解锁。</p>
<p align="center">
<br>
< <a href="050206.htm">上一页</a>--<a href="http://www.xxby.com" target="_blank">华生小屋</a>--<a href="050301.htm">下一页</a>
><br>
</td>
</tr>
</table>
</center>
</div>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?