8

次のようなものを使用して、asp.net アプリケーションで一時ファイルとイメージを作成することは可能ですか。

いいえの場合、どうすればよいですか?(ImagePB は以前に処理された Bitmap です)

if (System.IO.File.Exists(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao) == true)
{
    try
    {
        System.IO.File.Delete(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao);
        imagePB.Save(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao, imgFormat);
    }
    catch (Exception)
    { }
}
4

1 に答える 1

8

はい、GetTempPath()一時ファイルのパスを返す必要があり、投稿したコードは機能するはずです。http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath.aspxGetTempPath()には、パスの取得方法に関する詳細情報があります。

ただし、Temp Path ディレクトリが存在するかどうか、またはアプリケーションによって書き込み可能かどうかは確認されません。GetTempPath()アクセスできないパスを返す状況に遭遇したことはありません。この状況を処理するために、アプリケーションでこれを考慮したいと思うでしょう。

また、これは非常に可能性が高いことに注意してC:\Windows\Tempください。ディスク容量が制限されているか、ディスク容量が必要なときに他の誰かによっていつでも削除される可能性があります。アプリケーション内に一時パスを作成し、不要になったら削除することをお勧めします。

于 2013-02-25T01:52:16.340 に答える