GetRandomFileNameメソッドを使うことにより、ランダムなファイル名が生成できます。 このメソッドは、呼び出しごとにランダムなファイル名を生成します。 ただし、ファイル名としての文字列が生成されるだけで、ファイルそのものは作成されません。
このメソッドでは、常にファイル名8文字.拡張子3文字
の形式のファイル名が生成されます。 生成されるファイル名はランダムではあるものの、衝突する可能性はあります。 そのため、このファイル名を使って書き込みを行うような場合は、事前にファイルが実在しないか調べ、存在する場合は再生成するなどの対処が必要になります。
また、このメソッドでは拡張子も含めてランダムなファイル名となるため、特定の拡張子でランダムなファイル名を生成したい場合はChangeExtensionメソッドと組み合わせて使用します。
Path.GetRandomFileNameメソッドでランダムなファイル名を生成する
using System;
using System.IO;
class Sample {
static void Main()
{
// ランダムなファイル名を5個生成する
for (var i = 0; i < 5; i++) {
Console.WriteLine(Path.GetRandomFileName());
}
Console.WriteLine();
// ランダムなファイル名を、拡張子.txtで5個作成する
for (var i = 0; i < 5; i++) {
Console.WriteLine(Path.ChangeExtension(Path.GetRandomFileName(), ".txt"));
}
}
}
実行結果例
b0zi1hbt.ptt p2hbs2gr.xgs p31mnlvk.h32 wpfbmt3u.ocp ykxxttdp.umw 4fo2wcoc.txt lsm3pe0k.txt kczgd02w.txt ysdpomh3.txt lw33m1rh.txt