C#中操作指定路径的目录

using System.IO; 


一、创建目录
private void CreateDoc(string DocPath)
    {
         DirectoryInfo DirSub = new DirectoryInfo(DocPath);
         if (DirSub.Exists == true)
        {
            Response.Write("<script language=javascript>alert('同名文件夹已经存在!文件夹名称:" + DirSub.Name + "')</script>");
            return;
        }
        else
        {
            DirSub.Create();
        }
    }

 private void CreateDir(string DocPath)
    {
        if (Directory.Exists(DocPath))
        {
            Response.Write("<script language=javascript>alert('同名文件夹已经存在!')</script>");
            return;
        }
        DirectoryInfo di = Directory.CreateDirectory(DocPath);
        //di.Delete();
    }

二、删除目录
 Directory.Delete(path);

三、小结
1、string path = @"c:\MyDir";
2、string TempPath = Server.MapPath("~/UploadFile");
//返回的是c:\dirname\UploadFile
3、DirectoryInfo DirSub = new DirectoryInfo(DocNamePath + "\\" + SubName);
组合路径和文件目录名称用"\\"这样的符号,
4、关于目录名称的操作
string DocPath = @"c:\DirA\DirB\DirName";
DirectoryInfo DirSub = new DirectoryInfo(DocPath);
DirSub.Name          返回: DirName
DirSub.FullName     返回:c:\DirA\DirB\DirName

此 Name 属性只返回目录的名称,如“Bin”。若要获取完整路径(如“c:\public\Bin”),请使用 FullName 属性。DirectoryInfo 的 Name 属性不需要权限(构造 Exists 所需的此目录的读权限以外的权限)就可以给出目录名。如果有必要将 DirectoryInfo 发给具有密码保护名称的目录,则创建一个虚拟目录以供不受信任的代码使用。

5、文件夹名称包含空格,作为路径时并不截取,作为完整的一部分路径信息来使用。

6、如果指定的路径字符串,C#中这样定义
string TempPath = "C:\\pathName"   是两斜线,不是一斜线(VB.net)可以只是一斜线
另外的方法:
string TempPath = @"C:\pathName" 
这样写,防止解释为与转义符号
string p1 = @"c:\zz";
string p2 = "ddd111ddd";
string RealPath = Path.Combine(p1, p2);  返回 路径字符串内容: c:\zz\ddd111ddd
Combine:合并两个路径字符串。


返回值
包含合并的路径的字符串。如果指定的路径之一是零长度字符串,则该方法返回其他路径。如果 path2 包含绝对路径,则该方法返回 path2

posted @ 2007-09-17 14:14  nestea  阅读(980)  评论(0编辑  收藏  举报