简体   繁体   English

如何在目录中创建子目录

[英]how to create a sub directory inside a directory

In other words, i have temp folder where i store my extracted files.换句话说,我有临时文件夹,用于存储我提取的文件。 How do i create a folder in that temp folder so that all files are extracted or unzipped in this folder, which is inside the temp folder?我如何在该临时文件夹中创建一个文件夹,以便在该文件夹中提取或解压缩所有文件,该文件夹位于临时文件夹内?

Simple 简单

Directory.CreateDirectory(Path.Combine("<Your temp folder>", "<DirectoryName>"));

Make sure you have the proper rights given to the aspnet worker process to create the folder. 确保您具有为aspnet工作进程提供的适当权限以创建该文件夹。

string tempFolderAbsolutePath = @"C:\Temp";
string subFolderRelativePath = @"SubTemp1";

DirectoryInfo tempFolder = new DirectoryInfo( tempFolderAbsolutePath );
DirectoryInfo subFolder = tempFolder.CreateSubdirectory( subFolderRelativePath );

string tempFileName = String.Concat( Guid.NewGuid().ToString(), @".tmp" );
string textData = @"Temp text data";

using (StreamWriter streamWriter = File.CreateText( Path.Combine( subFolder.FullName, tempFileName ) ))
{
        streamWriter.Write( textData );
        streamWriter.Flush();
        streamWriter.Close();
}

只需使用此:

System.IO.Directory.CreateDirectory(String.Format(@"{0}/{1}", PathToParent, SubDirectoryName)

System.IO.Directory.CreateDirectory()是您正在寻找的。

FRONT END 前端

        <form id="form1" runat="server">
            <asp:Button ID="Button1" runat="server" Text="Create New Directory" onclick="createButton_Click" />            
            <br /><br />
            <asp:Label ID="Label1" runat="server" Text=""></asp:Label><br />
            <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
        </form>

CODEBEHIND 代码隐藏

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Configuration;
using System.IO;

namespace RakeshDadamatti
{
    public partial class CreateDirectory : System.Web.UI.Page
    {
        String newDirectory;
        String subDirectory;
        protected void Page_Load(object sender, EventArgs e)
        {
        }
        private void CreatenewDirectory(string newDirectory)
        {
            try
            {
                if (!Directory.Exists(newDirectory))
                {
                    Directory.CreateDirectory(newDirectory);
                    Label1.Text = "Directory Has Been Created.";
                }
                else
                {
                    Label1.Text = "Directory Exists.";
                }

                if (!Directory.Exists(subDirectory))
                {
                    Directory.CreateDirectory(subDirectory);
                    Label2.Text = "Sub Directory Has Been Created.";
                }
                else
                {
                    Label2.Text = "Sub Directory Exists.";
                }
            }
            catch (IOException _err)
            {
                Response.Write(_err.Message);
            }
        }
        protected void createButton_Click(object sender, EventArgs e)
        {
            newDirectory = Server.MapPath("Directory Name Here");
            subDirectory = Server.MapPath(@"" + "~/" + newDirectory + "/" + "Sub Directory Name Here");
            CreatenewDirectory(newDirectory);
        }
    }
}

System.IO.Directory.CreateDirectory()在指定路径中创建所有目录和子目录,除非它们已经存在。

string address = Directory.CreateDirectory(newDirectory).CreateSubdirectory("SubDir").FullName;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM