C#のフォルダを操作するサンプルです。
確認環境 ・Microsoft Visual Studio Community 2019 |
目次
フォルダ操作 | フォルダの存在確認(Exists) |
フォルダをコピーする(CopyDirectory) | |
フォルダを移動する(Move) | |
フォルダ名を変更する(Move) | |
空フォルダを作成する(CreateDirectory) | |
フォルダを削除する(Delete) | |
作成日時と更新日時を取得 |
フォルダの存在確認(Exists)
public static bool Exists(string path) |
Existsメソッドで、フォルダの存在確認を行うサンプルです。
using System;
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test1";
if (Directory.Exists(path1)){
Console.WriteLine("存在します");
}
}
}
10行目のExistsメソッドは、フォルダが存在している場合、trueを返します。
存在していない場合、falseを返します。
フォルダをコピーする(CopyDirectory)
public static void CopyDirectory(string sourceDirectoryName, string destinationDirectoryName) |
C#にCopyDirectoryというメソッドはありません。
以下は、VBの参照を追加して使用する方法です。
1.参照の追加をクリックします。
2.Microsoft.VisualBasicを選択します。
以下は、コードです。
using Microsoft.VisualBasic.FileIO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\sub1";
string path2 = @"d:\test4\sub1";
FileSystem.CopyDirectory(path1, path2);
}
}
1行目は、usingでVisualBasic.FileIOを指定しています。
10行目は、Test3フォルダ配下のsub1フォルダをTest4フォルダ配下にコピーします。
フォルダの中のファイルもコピーされます。サブフォルダもコピーされます。
フォルダを移動する(Move)
public static void Move(string sourceDirName, string destDirName) |
Moveメソッドで、フォルダを移動するサンプルです。
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\sub1";
string path2 = @"d:\test4\sub1";
Directory.Move(path1, path2);
}
}
10行目は、Test3フォルダ配下のsub1フォルダをTest4フォルダ配下に移動します。
フォルダの中のファイルもコピーされます。サブフォルダもコピーされます。
移動先に既に存在する場合はエラーになります。
フォルダ名を変更する(Move)
public static void Move(string sourceDirName, string destDirName) |
Moveメソッドで、フォルダ名を変更するサンプルです。
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\sub1";
string path2 = @"d:\test3\sub変更";
Directory.Move(path1, path2);
}
}
8行目は、Test3フォルダ配下のsub1フォルダをsub変更というフォルダ名に変更しています。
空フォルダを作成する(CreateDirectory)
public static DirectoryInfo CreateDirectory(string path) |
CreateDirectoryメソッドで、空フォルダを作成するサンプルです。
using System;
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\Test1";
Directory.CreateDirectory(path1);
}
}
10行目は、CreateDirectoryメソッドでtest3フォルダ配下にTest1フォルダを作成しています。
フォルダを削除する(Delete)
public static void Delete (string path, bool recursive) |
Deleteメソッドで、フォルダを削除するサンプルです。
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\sub1";
Directory.Delete(path1, true);
}
}
9行目は、フォルダを削除します。引数の2つめのtrueはサブフォルダがある場合も削除します。
https://docs.microsoft.com/ja-jp/dotnet/api/system.io.directory.delete?view=netframework-4.8
作成日時と更新日時を取得する
public static DateTime GetCreationTime(string path) |
public static DateTime GetLastWriteTime(string path) |
GetCreationTimeメソッドで、フォルダの作成日時を取得し、
GetLastWriteTimeメソッドで、フォルダの更新日時を取得するサンプルです。
using System;
using System.IO;
class Test1
{
static void Main()
{
string path1 = @"d:\test3\sub1";
// 作成日時
Console.WriteLine(Directory.GetCreationTime(path1));
// 更新日時
Console.WriteLine(Directory.GetLastWriteTime(path1));
}
}
11行目は、作成日時を取得します。2019/12/21 21:44:02のように表示されます。
13行目は、更新日時を取得します。2020/02/16 13:54:43のように表示されます。
関連の記事