Как получить временную папку для текущего пользователя

Простые «строковые данные json» для объекта без какой-либо сторонней dll

WebClient client = new WebClient();
string getString = client.DownloadString("https://graph.facebook.com/zuck");


JavaScriptSerializer serializer = new JavaScriptSerializer(); 
dynamic item = serializer.Deserialize<object>(getString);
string name = item["name"];

//note: JavaScriptSerializer in this namespaces
//System.Web.Script.Serialization.JavaScriptSerializer 

Примечание. Вы также можете использовать свой пользовательский объект.

Personel item = serializer.Deserialize<Personel>(getString);
375
задан Phoenix 18 June 2014 в 09:58
поделиться

3 ответа

System.IO.Path.GetTempPath () - это просто оболочка для собственного вызова GetTempPath (..) в Kernel32.

Иметь посмотрите http://msdn.microsoft.com/en-us/library/aa364992 (VS.85) .aspx

Скопировано с этой страницы:

Функция GetTempPath проверяет наличие переменных среды в следующем порядке и использует первый найденный путь:

  • Путь, указанный переменной среды TMP.
  • Путь, указанный переменной среды TEMP.
  • Путь, указанный переменной среды USERPROFILE.
  • Каталог Windows.

Мне не совсем понятно, означает ли «Каталог Windows» временный каталог в Windows или сам каталог Windows. Сама по себе выгрузка временных файлов в каталог Windows звучит как нежелательный случай,

397
ответ дан 22 November 2019 в 23:53
поделиться

НЕ используйте это:

System.Environment.GetEnvironmentVariable("TEMP")

Переменные среды можно переопределить, поэтому переменная TEMP не обязательно является каталогом.

Правильный способ - использовать System.IO.Path.GetTempPath () , как в принятом ответе.

29
ответ дан 22 November 2019 в 23:53
поделиться

try

Environment.GetEnvironmentVariable("temp");
-7
ответ дан 22 November 2019 в 23:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: