以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  文件目录问题  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=6216)

--  作者:ZM296514
--  发布时间:2007/1/24 22:34:00
--  文件目录问题
易表中返回当前文件目录参数为:docdir,现请教如何返回当前目录的上一级目录?例如当前文件所在目录为:C:\\1\\2\\3,则要求返回为C:\\1\\2,如何实现?请教等待中。。。
--  作者:ZM296514
--  发布时间:2007/1/24 22:44:00
--  
请教等待中,自己顶一下
--  作者:lmk
--  发布时间:2007/1/24 23:11:00
--  
Substitute(Split(Substitute(docdir,"\\", "*",Len(docdir) - Len(Substitute(docdir,"\\","")) - 2),"\\",Len(docdir) - Len(Substitute(docdir,"\\","")) - 2),"*","\\")
--  作者:lmk
--  发布时间:2007/1/24 23:18:00
--  
呵呵,这样应该更简单:
Substitute(Split(Substitute(docdir,"\\", "*",Len(docdir) - Len(Substitute(docdir,"\\","")) - 2),"\\",1),"*","\\")
--  作者:czy
--  发布时间:2007/1/24 23:22:00
--  
记得dos中的两点,在这里用一下。
docdir+"..\\"
打开上一级文件夹,如:
Run(docdir+"..\\")
--  作者:xj22710
--  发布时间:2007/1/24 23:27:00
--  
不知楼主的目的是取目录路径还是取文件文件路径,如果是前者,就很难,如楼上公式

但目的如果是取文件路径就很简单,方法同Dos下面一样,比如这个公式:
Exist(docdir+"..\\a.egd"),判断当前文件目录的上级目录是否有a.egd这个文件存在,就楼主的路径作比,判断C:\\1\\2\\a.egd是否存在,这个写法的缺点是如果要显示出这个绝对路径,则显示结果不正确,会显示为C:\\1\\2\\3\\..\\a.egd,这个就没办法了


--  作者:ZM296514
--  发布时间:2007/1/25 13:38:00
--  
下面引用由lmk2007/01/24 11:18pm 发表的内容:
呵呵,这样应该更简单:
Substitute(Split(Substitute(docdir,"\\", "*",Len(docdir) - Len(Substitute(docdir,"\\","")) - 2),"\\",1),"*","\\& ...

问题这是这样解决了,谢谢哈
三人行,必有我师