主题:[原创]一个值得注意的文件系统问题
孙瑞
[专家分:590] 发布于 2008-08-12 23:57:00
在利用App.Path函数时,假如你生成的可执行文件在某个驱动器的根目录,那么,使用App.Path得到的路径就是诸如“C:\\a.exe”的路径,这显然不是我们所需要的,下面,可以通过自定义函数解决这个问题。
Function incase(link)
Dim dj As String
If InStrRev(link, "\\") > 0 Then
dj = Replace(link,"\\","\") '将link中的"\\"换成"\"
incase=dj
Else
incase=link
End If
End Function
最后更新于:2008-08-17 21:15:00
回复列表 (共9个回复)
沙发
bcahzvip [专家分:6040] 发布于 2008-08-13 07:49:00
= =;问题呢?
板凳
一江秋水 [专家分:9680] 发布于 2008-08-13 10:42:00
更简洁的办法是:
Function incase(link) as string
incase=Replace(link,"\\","\")
End Function
3 楼
tanchuhan [专家分:15140] 发布于 2008-08-13 10:43:00
你这个函数有问题,
Else
incase = dj
返回空字串
4 楼
guoyong_cy [专家分:3050] 发布于 2008-08-17 14:02:00
确实有这个问题,但不会出错,大多数时候不用管它
5 楼
joforn [专家分:1460] 发布于 2008-08-20 17:05:00
我一般这样用:
app.path & iif(right(app.path,1)="\",vbnullstring,"\")
6 楼
孙瑞 [专家分:590] 发布于 2010-04-11 00:34:00
呵呵,后来发现这个问题了,改了!谢谢大家支持!
7 楼
tanchuhan [专家分:15140] 发布于 2010-04-11 20:48:00
事实上好像多几个"\"也关系不大?
C:\\tes.txt
一样OK
8 楼
merry05 [专家分:8920] 发布于 2010-04-12 11:45:00
OK是OK
有些老板就很BT,有路径情结
明明C:\\是没问题的,但是就一定要求得\,多一杠都不行
9 楼
孙瑞 [专家分:590] 发布于 2010-08-26 15:41:00
呵呵,,尴尬,,貌似我有路径情结……洁癖相当严重
当然,现实生活中是个邋遢小子。呵呵
我来回复