C#Windowsフォームアプリケーションインスタンス10の作成[ディレクトリ管理]

 インスタンス10はもう?まだプロジェクトを作ってみませんか?手順がわかりませんか?コードを書けませんか?学ぶために以下のリンクをご覧ください!

C#Windowsフォームアプリケーションインスタンスの作成1

C#Windowsフォームアプリケーションインスタンス2の作成

1.知識ポイント

1.パスの使用:

(1)絶対パス:ドライブ文字から始まるパス    

        "c:\\ mydir"    

        "c:\\ mydir \\ mydir1"    

        @ "c:\ mydir"

(2)相対パス:現在のパスから始まるパスです    

        a。現在のパスがC:\windowsの場合          

                "。\system32\cmd.exe"//。は現在のパスを示します    

        b。現在のパスがC:\programファイルの場合        

                 ".. \ windows \ system32 \ cmd.exe"//..は親ディレクトリです    

        c。現在のパスがC:\ program files \commonfilesの場合          

                ".. \ .. \ windows \ system32 \ cmd.exe"

方法1:ディレクトリが存在するかどうかを確認する      

        bool b1 = Directory.Exists( "c:\\ mydir");  

        ブールb1=Directory.Exists(@ "c:\ mydir");

方法2:ディレクトリが存在するかどうかを確認する    

        DirectoryInfo di = new DirectoryInfo( "c:\\ mydir");    

        bool b2 = di.Exists;

方法1:ディレクトリを作成します(Directoryクラスを使用) 

        Directory.CreateDirectory( "c:\\ mydir");

方法2:ディレクトリを作成します(DirectoryInfoクラスを使用)  

        DirectoryInfo d2 = new DirectoryInfo( "c:\\ mydir"); d2.Create();

方法1:ディレクトリを削除する

        string path1 = @” d:\ abc”; if(Directory.Exists(path1)){Directory.Delete(path1、true); }

方法2:ディレクトリを削除する

        DirectoryInfo di = new DirectoryInfo(@” d:\ abd”); if(di.Exists){di.Delete(); }

方法1:ディレクトリを移動する

        if(Directory.Exists(@“ d:\ aaa”)){Directory.Move(@“ d:\ aaa”、@“ e:\”); }

方法2:ディレクトリを移動する

        DirectoryInfo di = new DirectoryInfo(@“ d:\ aaa”)); if(di.Exists){di.MoveTo(@” e:\”); }

方法1:サブディレクトリを取得する

        string path0 = @“ c:\”;

        string [] sdirs1 = Directory.GetDirectories(path0);

        foreach(string sdir in sdirs1){Console.WriteLine(“ {0}”、sdir); }

方法2:サブディレクトリを取得する

        DirectoryInfo di = new DirectoryInfo(@“ c:\”);

        string [] sdirs2 = di.GetDirectories();

        foreach(string sdir in sdirs2){Console.WriteLine(“ {0}”、sdir); }

方法1:ディレクトリ内のファイルを取得する

        string [] fs1 = Directory.GetFiles(path1);

        foreach(string f in fs1){Console.WriteLine(“ {0}”、f); }

方法2:ディレクトリ内のファイルを取得する

        DirectoryInfo di = new DirectoryInfo(@“ c:\”);

        文字列[]fs1= di.GetFiles();

        foreach(string f in fs1){Console.WriteLine(“ {0}”、f); }

2.スタイルデザイン

ツールで次のコントロールを選択し ます

 

 

 

 

 

3.コードの実装 

using System.Windows.Forms;
using System.IO;

namespace 目录管理
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            StartPosition = FormStartPosition.CenterScreen;
        }
        //”创建”的Click事件的代码
        private void button1_Click(object sender, EventArgs e)
        {
            string cpath = textBox1.Text;
            if (cpath != "")
            {
                if (!Directory.Exists(@cpath))
                { Directory.CreateDirectory(@cpath); }
                else
                { MessageBox.Show("目录已存在或非法目录!"); }
            }
            else
            {
                MessageBox.Show("请输入要创建的目录!");
                this.textBox1.Focus();
            }
        }
        //”删除”的Click事件的代码
        private void button2_Click(object sender, EventArgs e)
        {
            string dpath = textBox2.Text;
            if (dpath != "")
            {
                if (Directory.Exists(@dpath))
                { Directory.Delete(@dpath); }
                else
                { MessageBox.Show("目录不存在或非法目录!"); }
            }
            else
            {
                MessageBox.Show("请输入要删除的目录!");
                this.textBox2.Focus();
            }
        }
        //”移动”的Click事件的代码
        private void button3_Click(object sender, EventArgs e)
        {
            string srcpath = textBox3.Text;
            string destpath = textBox4.Text;
            if (srcpath == "" || destpath == "")
            { MessageBox.Show("请输入要移动的源目录与目的目录路径!"); }
            else
            {
                if (Directory.Exists(@srcpath))
                {
                    if (!Directory.Exists(@destpath))
                    {
                        DirectoryInfo dir = new DirectoryInfo(@srcpath);
                        dir.MoveTo(@destpath);
                    }
                    else
                    { MessageBox.Show("目的目录已存在!"); }
                }
                else
                { MessageBox.Show("源目录不存在!"); }
            }
        }
        //”子目录”的Click事件的代码
        private void button4_Click(object sender, EventArgs e)
        {
            string detailpath = textBox5.Text;
            richTextBox1.Clear();
            if (Directory.Exists(@detailpath))
            {
                string[] dir = Directory.GetDirectories(@detailpath);
                foreach (string adir in dir)
                { richTextBox1.AppendText(adir + '\n'); }
            }
            else
            { MessageBox.Show("目录不存在!"); }
        }
        //”获取文件”的Click事件的代码
        private void button5_Click(object sender, EventArgs e)
        {
            string detailpath = textBox5.Text;
            richTextBox2.Clear();
            if (Directory.Exists(@detailpath))
            {
                string[] files = Directory.GetFiles(@detailpath);
                foreach (string afile in files)
                    richTextBox2.AppendText(afile + '\n');
            }
            else
                MessageBox.Show("目录不存在!");
        }
    }
}

4.実行効果 

おすすめ

転載: blog.csdn.net/qq_45037155/article/details/124313039