Если я создаю некоторый файл с помощью Пути. GetTempPath () - это автоматически становится удаленным на некотором этапе или мое дело это для удаления его?
Нет, вам нужно будет вручную удалить файл. Path.GetTempPath () просто дает вам путь к папке temp.
Обычно, если ваше приложение не удаляет файл, он все еще будет там, пока ваше приложение не удалит его, и вы должны управлять файлами, создаваемыми вашим приложением, на основе этой идеи.
Тем не менее, как только файл закрыт, вы всегда должны учитывать тот факт, что его может не быть там в следующий раз, когда вы захотите его, и что вам может потребоваться воссоздать его. Например, в Windows есть «инструмент очистки диска», который можно запускать при нехватке места, по указанию пользователя или по расписанию ...
FileOptions.DeleteOnClose
приведет к автоматическому удалению файла при закрытии . Это также работает, если программа завершается из-за исключения.
Например, как упоминалось в , этот ответ :
using (FileStream fs = new FileStream(Path.GetTempPath() + "foo.bar",
FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None,
4096, FileOptions.RandomAccess | FileOptions.DeleteOnClose))
{
// temp file exists
}
// temp file is gone