【c# WPF道場】ファイル・フォルダを操作する

WPF

フォーム作成

まずはフォームを作成します。

WPFアプリ(.NET Framework)で新規製作します。

フォーム内にボタンを配置します。

ファイルをコピーする

ファイルをコピーするにはFile.Copy関数を使用します。引数は以下の通りです。

System.IO.File.Copy(“コピー元パス”,”コピー先パス”); *第3引数 true:上書き保存

まずは、コピー用のテキストを作成します。

次に、ボタン関数を編集していきます。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.File.Copy(@"C:\test\text1.txt", @"C:\test\text2.txt");
            MessageBox.Show("ファイルをコピーしました");
        }

ファイルがコピーされました。

ファイル・フォルダ名を取得

フルパスからファイル名を取得します。

ファイル名を取得するには、Path.GetFileName関数を使用します。

コードと実行結果を以下に表示します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string fileName = System.IO.Path.GetFileName(@"C:\test\text1.txt");
            MessageBox.Show(fileName);
        }

次にフォルダ名を取得します。

フォルダ名を取得するには、Path.GetDirecotryName関数を使用します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string fileName = System.IO.Path.GetDirectoryName(@"C:\test\text1.txt");
            MessageBox.Show(fileName);
        }

ファイル名 “test1.txt” を除いたフォルダ名が表示されています。

ファイルを移動

まずは移動先のフォルダを作成します。

フォルダ1

フォル2

それでは、フォルダ間でファイルを移動してみます。

ファイルを移動するには、File.Move関数を使用します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.File.Move(@"C:\testFolder1\text1.txt", @"C:\testFolder2\text1.txt");
            MessageBox.Show("ファイルを移動しました");
        }

ファイルが移動されました。

フォルダを作成

以下のフォルダ内にサブフォルダを作成してみます。作成するには、Directory.CreateDirectory関数を使用します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.Directory.CreateDirectory(@"C:\testFolder2\SubFolder");
            MessageBox.Show("サブフォルダを作成しました");
        }

実行結果:サブフォルダが作成されました

フォルダを移動

以下のファイルデータを移動先フォルダへ移動してみます。

移動するには、Directory.Moveを使用します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.Directory.Move(@"C:\testFolder1\text1.txt", @"C:\testFolder1\移動先\text1.txt");
            MessageBox.Show("ファイルを移動しました");
        }

移動先フォルダにファイルが移動しました。

ファイル・フォルダを削除する

ファイルを削除します。削除するには、File.Delete関数を使用します。

以下のフォルダに保存されたファイルを削除してみます。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.File.Delete(@"C:\testFolder1\移動先\text1.txt");
            MessageBox.Show("ファイルを削除しました");
        }

実行すると、以下の通りファイルが削除されています。

次にフォルダを削除します。フォルダを削除するには、Directory.Deleteを使用します。

移動先フォルダを削除するコードを作成します。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.Directory.Delete(@"C:\testFolder1\移動先");
            MessageBox.Show("フォルダを削除しました");
        }

実行するとフォルダが削除されました。

このフォルダ削除ですが、フォルダの中にフォルダ(サブフォルダ)が入っていると、ディレクトリが空ではありません。というエラーが返されます。

サブフォルダごと削除したいときは、Directory.Deleteの第二引数にtrueを入れます。

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            System.IO.Directory.Delete(@"C:\testFolder1\移動先",true);  //サブフォルダごと削除
            MessageBox.Show("フォルダを削除しました");
        }

そうすると、サブフォルダごとフォルダを削除することができます。

コメント

タイトルとURLをコピーしました