asp.net 检查文件夹和文件是否存在

原文  asp.net 检查文件夹和文件是否存在

允许 path 参数指定相对或绝对路径信息。 相对路径信息被解释为相对于当前工作目录。

检查该目录是否存在之前,从 path 参数的末尾移除尾随空格。

path 参数不区分大小写。

如果您没有该目录的最小只读权限,exists 方法将返回 false。

if directory.exists(path) then
                    ' this path is a directory.
                    processdirectory(path)
                else
                    console.writeline("{0} is not a valid file or directory.", path)
                end if

下在看一款详细的实例

//判断文件夹的存在、创建、删除文件夹            
            string aaaa = "f:notebookhaha";//路径的正确写法
            if (directory.exists(aaaa))//如果不存在就创建file文件夹
            {
                messagebox.show("存在文件夹");
                //directory.delete(aaaa, false);//如果文件夹中有文件或目录,此处会报错
                //directory.delete(aaaa, true);//true代表删除文件夹及其里面的子目录和文件
            }
            else
            {
                messagebox.show("不存在文件夹");
                directory.createdirectory(aaaa);//创建该文件夹
            }

//判断文件的存在、创建、删除文件
            string dddd = aaaa + "11.txt";
            if (file.exists(dddd))
            {
                messagebox.show("存在文件");
                file.delete(dddd);//删除该文件
            }
            else
            {
                messagebox.show("不存在文件");
                file.create(dddd);//创建该文件,如果路径文件夹不存在,则报错。
            }

<span style="font-family: verdana, 'courier new'" face="verdana, 'courier new'"><span style="font-size: 15px; line-height: 18px; white-space: normal">
</span></span>

关于朋友说file.exists() 对网络映射盘上的文件,不论存在与否,一律返回false下面来看看详细说明

file.exists()本身没有问题。您可以试一下,在winform中完成同样的功能不会出任何错误。
之所以在asp教程.net上对其他机器上的共享文件,不论存在与否,一律返回false,主要是用户权限的问题。当运行

asp.net教程程序时,并不是以当前用户权限运行,而是以aspnet用户权限。处于安全方面考虑,该权限在vs.net正

式版有比较严格的限制。当aspnet权限无权查看该共享文件,则返回false。

有一个workaround:您可以更改该asp.net程序的用户权限,在web.config文件中为该asp.net应用程序指定一个

特定的用户:
<identity impersonate="true" username="accountname" password="password" />
经过测试,这时应该能够直接检测到其他机器的共享文件是否存在:
bool a = file.exists("othercomputersharetest.txt");
(检测网络映射盘上的文件仍会有问题)。

上一篇:selenium webdriver API


下一篇:svn利用TortoiseSVN忽略文件或文件夹