メインメソッド
using System;
using System.IO;
namespace sample
{
class Program
{
static void Main(string[] args)
{
string path = string.Empty;
FileSearch fs = new FileSearch();
Console.WriteLine("Enter file name ...");
path = Console.ReadLine();
fs.DirectoryExists(path);
}
}
}
ファイルの存在確認と作成クラス
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
namespace sample
{
class FileSearch
{
//フォルダの存在確認を行う
public bool DirectoryExists(string Folderpath)
{
string DisideOfSelsct;
Console.WriteLine("フォルダの存在チェック");
if (!Directory.Exists(Folderpath))
{
Console.WriteLine("フォルダが存在しません。フォルダを作成しますか?");
Console.WriteLine("作成:yes 作成しない:no");
DisideOfSelsct = Console.ReadLine();
CreateDirectory(Folderpath, DisideOfSelsct);
}
else
{
Console.WriteLine(Folderpath + "は存在します");
}
return true;
}
//フォルダの作成を行う
private void CreateDirectory(string DirectoryFolder, string Answer)
{
if (!Directory.Exists(DirectoryFolder) && Answer.Equals("yes"))
{
Directory.CreateDirectory(DirectoryFolder);
}else if(Directory.Exists(DirectoryFolder) && Answer.Equals("no"))
{
return;
}
}
}
}
visual studio2017でC#コンソールアプリケーションを作成しました。
プログラム内容
コンソールから絶対パスを入力します。
フォルダが存在していれば何もせずに終わります。
存在しない場合はコンソール上でyesと入力することでフォルダを入力したパスで作成しますが、
noの場合は作成せずに終了します。
感想
これをオブジェクト指向の理解と、メソッドの引数を理解するために作成しました。
それだけなら単純な入出力だけ行うコンソールアプリでも良かったと思いますががめ、今回はフォルダ作成の簡易アプリケーションを作成しました。
この手のサンプルはネット上にいくらでもありますが、理解するためには書いて覚えるのが良いので備忘録として残しておくことにしました。
ご指摘などございましたら、ご教示頂けると幸いです。