簡體   English   中英

在C#中臨時寫入文件

[英]Write a file temporarily on disk in C#

我有以下問題:我有一些(二進制)文件 ,它們嵌入在資源中。 對於一些原因,我必須暫時寫在磁盤上的這些文件。 我該怎么辦? 也許這可以用GetRandomFilename ()或GetTempFileName ()來完成?

GetTempFileName()是在這種情況下使用的邏輯。

正如leppie所說,確保在完成后刪除文件以避免任何問題。 GetTempFileName()用於創建超過65535個文件而不刪除以前的臨時文件,則會引發IOException。

您還可以創建Guid並從中創建文件名。 保證獨特和快速。

GetTempFile非常慢,因為它必須掃描免費文件名。 它只是創建一個前綴並為其添加一個數字。 如果已存在該名稱的文件,則會跳過此名稱。 如果您的臨時文件夾已滿,則此檢查需要一些時間

也無法指定應在哪個文件夾中創建臨時文件。 GetTempFile總是在Windows分區上創建臨時文件。 如果您創建大型臨時文件,則需要指定它們應存儲的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM