1

私の質問は、小さな .NET プログラムでの一時ファイルの処理についてです。このプログラム/ユーティリティは、2 つの URL を使用して次のことを行うだけです。

Download each URL to a string (WebClient.DownloadString).
Save each string to a temporary file.
Call WinMerge (Process.Start) to diff the two files (in read-only mode for both files).

私は現在、おそらく機能する最も単純なものを持っています:

save URL1 to windows/temp/leftFileToDiff.txt
save URL2 to windows/temp/rightFileToDiff.txt.

これはうまく機能します。WinMerge は読み取り専用モードで実行する必要があるだけなので、プログラムを複数回実行することでファイルが上書きされる可能性があり、悪いことは何も起こりません。

ただし、WinMerge ビューでどれがどれであるかを確認できるように、一時ファイル名を意味のあるもの (URL に関連するもの) に変更したいと考えています。また、これらのファイルが不要になったらクリーンアップしたいと考えています。これにはどのようなオプションがありますか?

私の次の最も簡単なアイデアは、これらが保存される特定のフォルダーを用意し、プログラムが終了するたびにこれを消去することです。より良い/よりエレガントな/標準的な方法はありますか?

ありがとう。

4

1 に答える 1

5

Guidユーザーの一時領域の下にベースのフォルダーを作成し、それを使用しますか?

        string path = Path.Combine(Path.GetTempPath(),
              Guid.NewGuid().ToString("n"));
        Directory.CreateDirectory(path);
        try
        {
            // work inside path
        }
        finally
        {
            try { Directory.Delete(path, true); }
            catch (Exception ex) {Trace.WriteLine(ex);}
        }
于 2009-08-28T10:42:33.897 に答える