原文发布时间为:2008-08-07 —— 来源于本人的百度文章 [由搬家工具导入]

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.IO;
using System.Text;

public partial class Default4 : System.Web.UI.Page
{
   //DropDownList1的AppendDataBoundsItems属性要改成true
   string fpath;
   FileStream fs;
   DirectoryInfo di;
   FileInfo fi;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.QueryString["fpath"] == null)
            {
                fpath = Server.MapPath(".");
                Label1.Text = fpath;
                TextBox1.Text = fpath;
                fill(fpath);
            }
            else
            {
                fpath = Server.UrlDecode(Request.QueryString["fpath"]);
                Label1.Text = fpath;
                TextBox1.Text = fpath;
                fill(fpath);
            }
        }
    }

    protected void fill(string fpath)
    {
       
            TableCell td;
            TableRow tr;
            Button btn;

            tr = new TableRow();

            td = new TableCell();
            btn = new Button();
            btn.Text = "名称";
            btn.Width = 200;
            btn.Attributes.Add("onClick", "return false");
            td.Controls.Add(btn);
            tr.Cells.Add(td);

            td = new TableCell();
            btn = new Button();
            btn.Text = "类型";
            btn.Width = 60;
            btn.Attributes.Add("onClick", "return false");
            td.Controls.Add(btn);
            tr.Cells.Add(td);

            td = new TableCell();
            btn = new Button();
            btn.Text = "大小";
            btn.Width = 80;
            btn.Attributes.Add("onClick", "return false");
            td.Controls.Add(btn);
            tr.Cells.Add(td);

            td = new TableCell();
            btn = new Button();
            btn.Text = "修改日期";
            btn.Width = 150;
            btn.Attributes.Add("onClick", "return false");
            td.Controls.Add(btn);
            tr.Cells.Add(td);

            td = new TableCell();
            btn = new Button();
            btn.Text = "操作";
            btn.Width = 200;
            btn.Attributes.Add("onClick", "return false");
            td.Controls.Add(btn);
            tr.Cells.Add(td);

            Table1.Rows.Add(tr);
       

            string fname;
            string fexp;
            string fsize;
            string ftime;
            HyperLink href;
            string url;

            di = new DirectoryInfo(fpath);
            foreach (FileSystemInfo fsi in di.GetFileSystemInfos())
            {
                if (fsi is FileInfo)
                {
                    FileInfo fi = (FileInfo)fsi;
                    fname = fi.Name;
                    if (fi.Extension.Length < 1)
                        fexp = "";
                    else
                        fexp = fi.Extension.Remove(0, 1);
                    fsize = fi.Length.ToString();
                    ftime = fi.LastWriteTime.ToString();
                }
                else
                {
                    di = (DirectoryInfo)fsi;
                    fname = di.Name;
                    fexp = "文件夹";
                    fsize = "";
                    ftime = di.LastWriteTime.ToString();
                }

                tr = new TableRow();

                td = new TableCell();
                td.Controls.Add(new LiteralControl(fname));
                tr.Cells.Add(td);

                td = new TableCell();
                td.Controls.Add(new LiteralControl(fexp));
                tr.Cells.Add(td);

                td = new TableCell();
                td.Controls.Add(new LiteralControl(fsize));
                tr.Cells.Add(td);

                td = new TableCell();
                td.Controls.Add(new LiteralControl(ftime));
                tr.Cells.Add(td);

                if (fsi is DirectoryInfo)
                {
                    href = new HyperLink();
                    href.Text = "打开";
                    url = Server.UrlEncode(fpath);
                    href.NavigateUrl = "~/Default4.aspx?fpath=" + url + "\\" + fname;
                    td = new TableCell();
                    td.Controls.Add(href);
                    tr.Cells.Add(td);
                }
                else
                {
                    td = new TableCell();
                }
                if (fsi is FileInfo)
                {
                    href = new HyperLink();
                    href.Text = "编辑";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=editfile&url="+url+"&fname=" + fname;
                    td.Controls.Add(href);
                }
                else
                {
                    href = new HyperLink();
                    href.Text = "重命名";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=editdir&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }
                if (fsi is FileInfo)
                {
                    href = new HyperLink();
                    href.Text = "删除";
                    href.Attributes.Add("onClick", "return confirm('一旦删除,无法恢复,回收站也没有')");
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=deletefile&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }
                else
                {
                    href = new HyperLink();
                    href.Text = "删除";
                    href.Attributes.Add("onClick", "return confirm('一旦删除,无法恢复,回收站也没有')");
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=deletedir&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }
                if (fsi is FileInfo)
                {
                    href = new HyperLink();
                    href.Text = "移动";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=movefile&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }
                else
                {
                    href = new HyperLink();
                    href.Text = "移动";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=movedir&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }

                if (fsi is FileInfo)
                {
                    href = new HyperLink();
                    href.Text = "拷贝";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=copyfile&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }
                else
                {
                    href = new HyperLink();
                    href.Text = "拷贝";
                    url =Server.UrlEncode(fpath)+ "\\" + fname;
                    href.NavigateUrl = "~/Default5.aspx?ax=copydir&url=" + url + "&fname=" + fname;
                    td.Controls.Add(href);
                }

                tr.Cells.Add(td);

                Table1.Rows.Add(tr);
            }

            //DropDownList1的AppendDataBoundsItems属性要改成true才能添加静态项
            DropDownList1.Items.Clear();
            DropDownList1.Items.Add("请选择目标目录");
            if (fpath.Length > 4)
            {
                DropDownList1.Items.Add("返回上级目录");
                DropDownList1.DataSource = Directory.GetDirectories(fpath);
                DropDownList1.DataBind();
            }
            else
            {
                string[] item = Directory.GetLogicalDrives();
                for (int i = 0; i < item.Length; i++)
                {
                    DropDownList1.Items.Add(item[i]);
                }
                DropDownList1.DataSource = Directory.GetDirectories(fpath);
                DropDownList1.DataBind();
            }
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        fpath = TextBox1.Text;
        Label1.Text = fpath;
        fill(fpath);
    }
    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        switch (DropDownList1.SelectedItem.Text)
        {
            case "请选择目标目录":
                break;
            case "返回上级目录":
                string rootDir = Directory.GetParent(TextBox1.Text).FullName;
                fpath = rootDir;
                TextBox1.Text = fpath;
                Label1.Text = fpath;
                fill(fpath);
                break;
            default:
                fpath = DropDownList1.SelectedItem.Text;
                TextBox1.Text = fpath;
                Label1.Text = fpath;
                fill(fpath);
                break;
        }

    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        string newpath = Label1.Text + "\\" + TextBox2.Text;
        creatFile(newpath);
        fpath = Label1.Text;
        fill(fpath);
    }
    protected void creatFile(string path)
    {
        try
        {
           fi=new FileInfo(path);
           if (!fi.Exists)
               fi.Create();
           else
               Response.Write("<script>alert('文件已经存在')</script>");
        }
        catch (Exception ex)
        {
            Response.Write("<script>alert('" + ex.Message + "')</script>");
        }
    }
    protected void Button3_Click(object sender, EventArgs e)
    {
        string newpath = Label1.Text + "\\" + TextBox3.Text;
        creatDir(newpath);
        fpath = Label1.Text;
        fill(fpath);
    }
    protected void creatDir(string path)
    {
        try
        {
            di = new DirectoryInfo(path);
            if (!di.Exists)
                di.Create();
            else
                Response.Write("<script>alert('文件夹已经存在')</script>");
        }
        catch (Exception ex)
        {
            Response.Write("<script>alert('" + ex.Message + "')</script>");
        }
    }
}

----------------------------------------------------

net8:简易的文件磁盘管理操作一(包括文件以及文件夹的编辑创建删除移动拷贝重命名等)的更多相关文章

  1. net8:简易的文件磁盘管理操作二(包括文件以及文件夹的编辑创建删除移动拷贝重命名等)

    原文发布时间为:2008-08-07 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration ...

  2. Linux常用命令之文件磁盘管理

    前言 本文知识点是曾经学习过程中收录整理的,方便学习使用. 一>Linux常用基本命令 Linux命令格式:command [-options] [parameter1] ... command ...

  3. media静态文件统一管理 操作内存的流 - StringIO | BytesIO PIL:python图片操作库 前端解析二进制流图片(了解) Admin自动化数据管理界面

    一.media ''' 1. 将用户上传的所有静态文件统一管理 -- settings.py -- MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 2. 服务 ...

  4. iOS文件和文件夹的创建,删除,移动, 拷贝,是否存在及简单数据类型的读写

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc ...

  5. Linux(6)文件和磁盘管理

    文件和磁盘管理 1. 文件管理ls ls : 查看文件信息. 列出目录的内容 -a :显示指定目录下的所有文件, 包括以.开头的隐藏文件 -l :以列表方式显示文件的详细信息 -h :配合-l显示文件 ...

  6. Python::OS 模块 -- 文件和目录操作

    os模块的简介参看 Python::OS 模块 -- 简介 os模块的进程管理 Python::OS 模块 -- 进程管理 os模块的进程参数 Python::OS 模块 -- 进程参数 os模块中包 ...

  7. Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理

    一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该 ...

  8. Linux系统下常用的磁盘管理命令——du / df / fdisk / mount / xxd

    之前使用虚拟机体验Linux操作系统的使用,一般使用默认的磁盘分区设置,也很少涉及磁盘管理操作,且总有删除重装作为后盾.在安装Ubuntu双系统后,在使用过程中遇到了磁盘分区不合理导致的/boot分区 ...

  9. 【转载】Linux磁盘管理:LVM逻辑卷管理

    Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一. ...

随机推荐

  1. block总结我的

    1) struct Block_descriptor { unsigned long int reserved; unsigned long int size; void (*copy)(void * ...

  2. Linux之Nginx服务 nfs文件存储 负载均衡

    一.搭建Nginx服务 Nginx 是俄罗斯人编写的十分轻量级的HTTP 服务器,Nginx,它的发音为"engine X",是一个高性能的HTTP和反向代理服务器,同时也是一个I ...

  3. false - (失败的)什么都不做

    总览 (SYNOPSIS) false [忽略命令行参数] false OPTION 描述 (DESCRIPTION) 程序 结束 时, 产生 表示 失败 的 状态码. 下列的 选项 没有 简写 形式 ...

  4. shell脚本,awk实现每个数字加1.

    [root@localhost add]# cat file [root@localhost add]# cat file|awk '{for(i=1;i<=NF;i++){$i+=1}}1' ...

  5. http常用状态吗以及分别代表什么意思?

    http常用状态码: 状态码 定义 说明 1xx 信息 街道请求继续处理 2xx 成功 成功的收到.理解.接受 3xx 重定向 浏览器需要执行某些特殊处理一完成请求 4xx 客户端错误 请求的语法有问 ...

  6. MySql的基操勿六

    2018/12/6 星期四 19:34:07 authot by dabaine 数据库注释; -- 这就是注释 /*.....*/ 这也是注释 创建库; create databse [if not ...

  7. solr 单机模式搭建

    系统环境:centos 7 安装前准备 安装JDK环境 下载tomcat.solr安装包:solr下载地址:http://archive.apache.org/dist/lucene/solr/ 安装 ...

  8. Idea 搭建Maven--web项目(MVC)

    小编最近正在学习使用MVC框架,在搭建Maven的项目过程中,遇到了很多问题,上网搜了很多材料才找到答案,为了小编以后查起来方便,也为了向广大小伙伴分享,写了这部片博文,敬我昨天一天的学习结果! 步骤 ...

  9. UNIX环境C语言进程通信

    一.信号管理 1.函数signal signal函数是UNIX系统信号机制最简单的接口 #include <signal.h> typedef void (*sighandler_t)(i ...

  10. verilog behavioral modeling--sequential and parallel statements

    1.Sequential statement groups the begin-end keywords: .group several statements togethor .cause the ...