zoukankan      html  css  js  c++  java
  • 深入.NET平台和C#编程.第九章:文件操作.上机练习3-5

    --------------------------------------------------MyFile类--------------------------------------------------

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 
     7 namespace Shangjilx3
     8 {
     9     public class MyFile
    10     {
    11         //文件名
    12         public string Name { get; set; }
    13 
    14         //文件类型
    15         public string Type { get; set; }
    16 
    17         //文件大小
    18         public double Length { get; set; }
    19 
    20         //文件路径
    21         public string Path { get; set; }
    22     }
    23 }
    MyFile

    --------------------------------------------------formzyglqi主窗体------------------------------------------

      1 using System;
      2 using System.Collections.Generic;
      3 using System.ComponentModel;
      4 using System.Data;
      5 using System.Drawing;
      6 using System.IO;
      7 using System.Linq;
      8 using System.Text;
      9 using System.Threading.Tasks;
     10 using System.Windows.Forms;
     11 
     12 namespace Shangjilx3
     13 {
     14     public partial class formzyglqi : Form
     15     {
     16         public formzyglqi()
     17         {
     18             InitializeComponent();
     19         }
     20 
     21         List<MyFile> list = new List<MyFile>();
     22 
     23         /// <summary>
     24         /// 绑定ListView
     25         /// </summary>
     26         public void BindInfo()
     27         {
     28             try
     29             {
     30                 this.listView1.Items.Clear();
     31                 DirectoryInfo dir = new DirectoryInfo(this.treeView1.SelectedNode.Tag.ToString());
     32                 FileInfo[] dirs = dir.GetFiles();
     33 
     34                 foreach (FileInfo item in dirs)
     35                 {
     36                     MyFile my = new MyFile();
     37                     my.Length = item.Length;
     38                     my.Name = item.Name;
     39                     my.Path = item.FullName;
     40                     my.Type = item.Extension;
     41                     list.Add(my);
     42                     ListViewItem lv = new ListViewItem();
     43                     lv.Text = item.Name;
     44                     lv.SubItems.Add(item.Length.ToString());
     45                     lv.SubItems.Add(item.Extension);
     46                     lv.SubItems.Add(item.FullName);
     47                     this.listView1.Items.Add(lv);
     48                 }
     49             }
     50             catch (Exception)
     51             {
     52                 
     53             }
     54         }
     55 
     56         /// <summary>
     57         /// 初始化TreeView
     58         /// </summary>
     59         public void IniTreeView()
     60         {
     61             TreeNode tn = new TreeNode("D:/");
     62             tn.Tag = "D:/";
     63             this.treeView1.Nodes.Add(tn);
     64             DirectoryInfo info = new DirectoryInfo(this.treeView1.Nodes[0].Tag.ToString());
     65             DirectoryInfo[] dirs = info.GetDirectories();
     66             foreach (var item in dirs)
     67             {
     68                 TreeNode node = new TreeNode(item.ToString());
     69                 node.Tag = item.FullName;
     70                 this.treeView1.Nodes[0].Nodes.Add(node);
     71             }
     72             //展开所有树形节点
     73             this.treeView1.ExpandAll();
     74         }
     75 
     76 
     77         /// <summary>
     78         /// 窗口加载
     79         /// </summary>
     80         /// <param name="sender"></param>
     81         /// <param name="e"></param>
     82         private void formzyglqi_Load(object sender, EventArgs e)
     83         {
     84             IniTreeView();
     85         }
     86 
     87         private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
     88         {
     89             BindInfo();
     90         }
     91 
     92         /// <summary>
     93         /// 复制
     94         /// </summary>
     95         /// <param name="sender"></param>
     96         /// <param name="e"></param>
     97         private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
     98         {
     99             FolderBrowserDialog fbd = new FolderBrowserDialog();
    100             DialogResult dr = fbd.ShowDialog();
    101             string sourcePath = listView1.SelectedItems[0].SubItems[3].Text;
    102             string desPath = null;
    103             if (dr == DialogResult.OK)
    104             {
    105                 desPath = fbd.SelectedPath;
    106                 desPath += "/" + listView1.SelectedItems[0].SubItems[0].Text;
    107                 File.Copy(sourcePath , desPath);
    108                 MessageBox.Show("复制成功");
    109             }
    110         }
    111 
    112          /// <summary>
    113          /// 删除
    114          /// </summary>
    115          /// <param name="sender"></param>
    116          /// <param name="e"></param>
    117         private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
    118         {
    119             string oName = listView1.SelectedItems[0].Text;
    120             string path = listView1.SelectedItems[0].SubItems[3].Text;
    121             int index = oName.IndexOf(".");
    122             string nName = oName.Substring(0 , index);
    123             DialogResult result = MessageBox.Show("是否删除" + nName, "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
    124             if (result == DialogResult.Yes)
    125             {
    126                 File.Delete(path);
    127                 MessageBox.Show("删除成功");
    128                 BindInfo();
    129             }
    130         }
    131 
    132     }
    133 }
    formzyglqi

    --------------------------------------------------运行结果--------------------------------------------------

  • 相关阅读:
    C# 关于爬取网站数据遇到csrf-token的分析与解决
    Nginx实现同一端口HTTP跳转HTTPS
    Console也要美颜了,来给Console添色彩
    程序员如何巧用Excel提高工作效率
    LeetCode每日一练(1-3)
    Json对象转Ts类
    JcApiHelper 简单好用的.Net ApiHelper
    .Net Core Mvc/WebApi 返回结果封装
    C#光盘刻录
    Orm框架开发之NewExpression合并问题
  • 原文地址:https://www.cnblogs.com/chenhui666/p/6725833.html
Copyright © 2011-2022 走看看