C# - 一時ファイル(テンポラリファイル)を作成する

一時ファイルを作成するには、Path.GetTempFileName メソッドを使用します。

一時ファイルの作成方法

using System.IO;

string 作成された一時ファイル名 = Path.GetTempFileName();

サンプルコード1

一時ファイルを作成し、そのファイル名を表示します。
using System.IO;


// 一時ファイルを作成し、そのファイル名を返す。
string tempFileName = Path.GetTempFileName();

// ファイル名を表示
System.Console.WriteLine($"一時ファイル名 = {tempFileName}");
プログラムの実行結果
プログラムの実行結果
作成された一時ファイル
作成された一時ファイル

サンプルコード2

一時ファイルを作成し、ファイルを書き込んだ後に名前を変更します。 処理に失敗した場合は一時ファイルを削除します。
using System;
using System.IO;


// 一時ファイル名
string tempFileName = string.Empty;

try
{
    // 一時ファイルを作成し、そのファイル名を返す。
    tempFileName = Path.GetTempFileName();

    // 一時ファイルに書き込み
    using (StreamWriter sw = new StreamWriter(tempFileName))
    {
        sw.WriteLine("一時ファイルに書き込み");
    }

    // ファイル名を変更
    File.Move(tempFileName, "./test.txt");

    System.Console.WriteLine($"{tempFileName} -> ./test.txt");
}
catch (Exception ex)
{
    // エラーが発生
    System.Console.WriteLine(ex.Message);
}
finally
{
    // 一時ファイルが残っていれば削除する
    if (File.Exists(tempFileName))
    {
        File.Delete(tempFileName);
    }
}

検証環境