我在我的应用程序中使用FileUploader控件。我想保存一个文件到指定的文件夹。如果这个文件夹不存在,我想先创建它,然后将我的文件保存到这个文件夹。如果文件夹已经存在,那么只需将文件保存在其中。

我该怎么做呢?


当前回答

使用下面的代码按如何使用文件上传服务器控件动态创建文件夹?:

string subPath ="ImagesPath"; // Your code goes here

bool exists = System.IO.Directory.Exists(Server.MapPath(subPath));

if(!exists)
    System.IO.Directory.CreateDirectory(Server.MapPath(subPath));

其他回答

就写这一行:

System.IO.Directory.CreateDirectory("my folder");

如果该文件夹还不存在,则将创建该文件夹。 如果文件夹已经存在,那么该行将被忽略。

参考:关于目录的文章。在MSDN创建目录

当然,你也可以使用System.IO;在源文件的顶部,然后只写目录。CreateDirectory(“我的文件夹”);每次你想创建一个文件夹。

下面的代码是我使用的最好的代码行,如果不存在,将创建目录。

System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath("~/temp/"));

如果目录已经存在,此方法不会创建新目录,但会返回现有目录的DirectoryInfo对象。>

if (!Directory.Exists(Path.GetDirectoryName(fileName)))
{
    Directory.CreateDirectory(Path.GetDirectoryName(fileName));
}

创建一个新文件夹,给定父文件夹的路径:

        string pathToNewFolder = System.IO.Path.Combine(parentFolderPath, "NewSubFolder");
        DirectoryInfo directory = Directory.CreateDirectory(pathToNewFolder); 
       // Will create if does not already exist (otherwise will ignore)

指定新文件夹的路径 目录信息变量,因此您可以继续操作它,如您所愿。

如果文件夹不在图像文件夹或其他文件夹下,请使用此代码

string subPath = HttpContext.Current.Server.MapPath(@"~/Images/RequisitionBarCode/");

bool exists = System.IO.Directory.Exists(subPath);
if(!exists)
    System.IO.Directory.CreateDirectory(subPath);

string path = HttpContext.Current.Server.MapPath(@"~/Images/RequisitionBarCode/" + OrderId + ".png");