Ответ 1
string result = Path.GetTempPath();
http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath(v=vs.110).aspx
Я хочу использовать StreamWriter
для записи файла в папку temp.
Это может быть другой путь на каждом ПК, поэтому я попытался использовать %temp%\SaveFile.txt
, но это не сработало.
Как я могу сохранить временную папку с использованием переменных окружения?
И, например, можно ли использовать переменную окружения для хранения файлов в %appdata%
?
string result = Path.GetTempPath();
http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath(v=vs.110).aspx
Здесь очень полезен класс Path. Вы получаете два метода под названием
который может решить вашу проблему
Так, например, вы могли бы написать: (если вы не против точного имени файла)
using(StreamWriter sw = new StreamWriter(Path.GetTempFileName()))
{
sw.WriteLine("Your error message");
}
Или, если вам нужно указать имя файла
string myTempFile = Path.Combine(Path.GetTempPath(), "SaveFile.txt");
using(StreamWriter sw = new StreamWriter(myTempFile))
{
sw.WriteLine("Your error message");
}
Вы можете динамически извлекать временный путь, используя следующие и лучше использовать его вместо использования строкового кодированного строкового значения для временного местоположения. Он вернет временную папку или временный файл по вашему желанию.
string filePath = Path.Combine(Path.GetTempPath(),"SaveFile.txt");
или
Path.GetTempFileName();
System.IO.Path.GetTempPath()
Путь, указанный переменной среды TMP. Путь, указанный переменной окружения TEMP. Путь, указанный переменной среды USERPROFILE. Каталог Windows.
Для% appdata% взгляните на
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)