Как мне перечислить каталоги% TEMP% и% USERNAME% в C #? - PullRequest
1 голос
/ 31 марта 2011

Я пытаюсь перечислить файлы в каталоге% TEMP% и% USERNAME% в текстовом поле, чтобы люди могли видеть, какие файлы там существуют. Когда я набираю C: \ users \% username% ... Он не работает. Вот мой код:

string strDirLocal = @"C:\users\USERPROFILE\desktop";
if (System.IO.Directory.Exists(strDirLocal))
{
   foreach (string sPath in System.IO.Directory.GetFiles(strDirLocal, "*.*"))
   {
       textBox1.Text = textBox1.Text + sPath.Replace(strDirLocal + @"\", "") + "\r\n";

Спасибо, что нашли время, чтобы прочитать это.

Ответы [ 3 ]

3 голосов
/ 31 марта 2011

Что вам нужно сделать, это развернуть переменные окружения %TEMP% и %USERPROFILE% в вашей программе и использовать результат вместо переменной

string userProfile = Environment.GetEnvironmentVariable("USERPROFILE");
string strDirLocal = Path.Combine(userProfile, "desktop");
2 голосов
/ 31 марта 2011
Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)

Environment.GetFolderPath также предоставляет доступ ко многим другим специальным путям к папкам, таким как запись компакт-дисков и расположение логического рабочего стола и виртуального рабочего стола.

2 голосов
/ 31 марта 2011
...