【ASP.NET 基础】ASP.NET 目录操作

刚学习了ASP.NET 目录的基本操作,记录主要代码如下:

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

namespace DirectoryTry
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            GetTheDriversNum();
        }

        /// <summary>
        /// 创建目录示例
        /// </summary>
        private void CreateDirectory()
        {
            DirectoryInfo di =  //公开用于创建、移动和枚举目录和子目录的实例方法。此例不能被继承
                Directory.CreateDirectory(Server.MapPath(@"\document\txt"));//按所填写的路径创建所有目录和子目录
        }

        /// <summary>
        /// 删除目录示例
        /// </summary>
        private void DeleteDirectory() {
            if (Directory.Exists(Server.MapPath(@"\document"))) {//确定给定路径是否引用磁盘上的现有目录
                //删除指定的目录并(如果指示)删除该目录的任何子目录
                //表示要删除的目录,该目录必须为空。不然会报‘目录不是空的。'的错误
                //Directory.Delete(Server.MapPath(@"\document"));
                //Directory.Delete(Server.MapPath(@"\document\txt"));
                /*第一个参数表示表示要删除的目录。
                 * 第二个参数表示是否删除子目录、文件夹中的文件。
                 * 如果该值为 true,则目录不必为空也可以被删除。如果为false,则目录必须为空。
                 * 注意:不能删除只读文件。*/
                //Directory.Delete(Server.MapPath(@"\document"),false);
                Directory.Delete(Server.MapPath(@"\document"), true);
            }
        }

        /// <summary>
        /// 移动目录示例
        /// </summary>
        private void MoveDirectory() {
            //原目录
            string path1 = Server.MapPath(@"d1\dd1");
            //目标目录
            string path2 = Server.MapPath(@"d2\dd3");
            if (Directory.Exists(path1) && !Directory.Exists(path2))
            {
                //将文件或目录以及其内容移到新位置--原目录必须存在,目标目录必须不存在,不然会报错
                //移动目录时即使目录中有只读文件,也可以移动。
                Directory.Move(path1, path2);
            }
        }

        /// <summary>
        /// 重命名目录示例
        /// </summary>
        private void RenameDirectory() {
            //原目录
            string path1 = Server.MapPath(@"d2\dd3");
            //目标目录
            string path2 = Server.MapPath(@"d2\d22");
            if (Directory.Exists(path1) && !Directory.Exists(path2))
            {
                //重命名目录的方法和移动目录的方法完全相同,只要目标目录和源目录位于同一地址下且目录名不相同。
                Directory.Move(path1, path2);
            }
        }

        /// <summary>
        /// 列出驱动器示例
        /// </summary>
        private void GetTheDriversNum() {
            //检索此计算机上格式为"<盘符>:\"的逻辑驱动器名称
            string[] drivers = Directory.GetLogicalDrives();
            lb.Text += "共有" + drivers.Length + "个逻辑驱动器,分别是:<br />";
            for (int i = 0; i < drivers.Length;i++ )
            {
                //Server.HtmlEncode(string s);对字符串进行HTML编码并返回已编码的字符串
                lb.Text += Server.HtmlEncode(drivers[i]) + "<br />"; ;
            }
        }
    }
}

 

最后下面是GetTheDriversNum()方法实现的效果图:

 

posted @ 2013-04-27 14:15  叶超Luka  阅读(836)  评论(0编辑  收藏  举报