我正在開發一個使用C#3.5的WinForms應用程序。我有一個臨時保存文件的要求。我們只是說,出於參數的原因,這是用戶在查看應用程序上的特定選項卡時的很短時間。用戶導航離開標籤後,我可以自由刪除此文件。每次用戶導航到選項卡時(通常只執行一次),該文件將被創建(使用GUID名稱)。將文件保存在臨時目錄中是否被認爲是良好的/可接受的做法?
要到我的問題 - 它是好的做法,將文件保存到臨時目錄?我將使用以下邏輯:
Path.GetTempFileName();
我的意圖是創建文件並保留它而不刪除它。我將在此假設Windows操作系統根據剩餘可用空間的百分比以某個間隔清理臨時目錄。
注:我已經使用IsolatedStorage選項來創建該文件,手動刪除該文件時,我當用戶從導航選項卡遠離使用它即結束了考慮。但是,這並不是很好,因爲我需要獲取文件的絕對路徑或相對路徑,並且在與IsolatedStorage進行交互時,這似乎不是一個簡單/安全的工作。我的意見是,它只是沒有設計允許 這個。
其優良的,只要你不將這些文件 – Dhawalk
留下任何機密數據(1)你絕對應該作出努力,清理文件,當你用它做。如果文件在應用程序崩潰或被強行中止時退出是可以接受的,但在正常情況下,文件應該儘可能自行消失。(2)如果在世界可寫的目錄(通常是臨時目錄)中創建文件,請查看安全臨時文件創建的標準實踐並遵循它們。 – Celada
@Celada溫度真的是世界可寫嗎? AFAIK每個用戶都有自己的臨時目錄,如果其他用戶可以在那裏寫,我會感到驚訝。 – CodesInChaos