PathクラスはC#でパス文字列を操作するためのクラスです。
以下のように、ディレクトリだけ取得・ファイル名だけ取得 など、パス文字列操作を分かりやすく処理できます。
本記事では使い方をまとめています。保守性も上がるため普段から使うようにしましょう。
パス文字列から情報を取得
ディレクトリの取得
GetDirectoryName メソッドを使います
string testPath = @"C:pathtest.csv";
Console.WriteLine(Path.GetDirectoryName(testPath));
// C:path
ファイル名の取得
GetFileName メソッドを使います
string testPath = @"C:pathtest.csv";
Console.WriteLine(Path.GetFileName(testPath));
// test.csv
GetFileNameWithoutExtension メソッドを使うと、拡張子を省いたファイル名を取得できます
string testPath = @"C:pathtest.csv";
Console.WriteLine(Path.GetFileNameWithoutExtension(testPath));
// test
拡張子の取得
GetExtension メソッドを使います
string testPath = @"C:pathtest.csv";
Console.WriteLine(Path.GetExtension(testPath));
// .csv
パス文字列の結合
Combine メソッドを使います
第一引数のパスの末尾にパス区切り文字を入れても、入れなくても大丈夫です
string path1 = @"C:path";
string path2 = "test.csv";
Console.WriteLine(Path.Combine(path1, path2));
// C:pathtest.csv
指定したパスの長さが0の場合、もう一方のパスをそのまま返します
Console.WriteLine(Path.Combine(string.Empty, "test.csv"));
// test.csv
結合したパスの形式がおかしい場合、第二引数のパスをそのまま返します
Console.WriteLine(Path.Combine(@"C:testinput", @"C:output"));
// C:output