xwt620 发表于 2011-8-7 17:47:27

在inut里写一个文件路径,如何判断是有效的文件路径[已解决]

本帖最后由 xwt620 于 2011-8-15 21:54 编辑

我手动在input里填写一个保存路径如d:\1.xls,这个文件不一定存在,但是后期的函数会将这个路径保存为这个文件,那么如果我随便乱写一个文件名如 sdfsjkl,我后面程序用这个路径来保存文件肯定是会出错的,那么如何判断这个路径是有效的呢?

东挑西点 发表于 2011-8-7 18:09:18

可以新建一个文件/文件夹,不就可以确定了吗

xwt620 发表于 2011-8-7 18:20:07

回复 2# 东挑西点


    新建的方式是没有问题,但是手动写入的这种方式如何判断

yjw83523 发表于 2011-8-7 23:54:18

不怎么具体呀说明下

stdmis 发表于 2011-8-8 19:15:12

if fileexist($Path) thenmsgbox(0,"存在","")

飘云 发表于 2011-8-8 20:31:50

判断所输入的路径是否有效?你可以先取得此路径值,然后FileExists确定文件存不存在,如果存在,则有效,如果不存在,则试着用FileOpen的1+8模式建立此文件,如果文件被建立,则路径有效,如果函数返回-1自然就是无效路径了,以上操作很快的

飘云 发表于 2011-8-8 20:32:45

或者可以用正则来验证输入的是否有效,不过我对正则不太了解。。。。

user3000 发表于 2011-8-8 21:19:44

不知道楼主说的“有效”到底指的是路径存在还是路径存在并可用?
前面的几位的回答希望已经能帮上忙!

xwt620 发表于 2011-8-8 22:31:59

有效

本帖最后由 xwt620 于 2011-8-8 22:34 编辑

回复 7# 飘云


    我想到一个方法,其实可以把路径当作字符串来对待,验证字符串中是否包含有“\”来判定一个路径的有效

xwt620 发表于 2011-8-8 22:33:57

回复 8# user3000


    有效是指这个路径可能目前不存在,但是路径是合法的,就可以通过创建来实现;如果路径文件已经存在就没有必要问这个问题了

user3000 发表于 2011-8-8 23:04:26

那么6楼的回复应该能满足你的要求了!
只是“文件”要改成“文件夹”。

xwt620 发表于 2011-8-10 22:07:18

回复 11# user3000


    六楼的方法是把文件夹都建立好,但是我这个只判断路径是否合法,如果后期的程序不保存文件,那么这个路径就不要建立,保存才会建立。
其实我问这个问题的最终目的就是如何判断一个合法的路径?而不用FileExists或FileOpen等来判断。
我的思路也就是把路径当作字符串来处理。

user3000 发表于 2011-8-11 01:28:12

我还是认为6楼的方法最可靠。至多,建了文件夹再先把删了!
如按你的思路,用正则处理是恰当的了。
但,如果不是自己机器,你能保证预想中的路径是可写入的吗?

fuldho 发表于 2011-8-12 18:20:41

以“\”把路径划分成组数,读取最后一行字符串,再返回字符串(文件夹或文件)是否存在。

yjw83523 发表于 2011-8-12 18:44:33

我在看看真是的怎么没我想要的代码郁闷
页: [1] 2
查看完整版本: 在inut里写一个文件路径,如何判断是有效的文件路径[已解决]