Обновление: Добавлена проверка File.Exists за комментарий (2012-Jun-19)
Вот что я использовал в VB.NET. По сути, то же самое, что представлено, за исключением того, что я обычно не хотел создавать папку немедленно.
Преимущество использования GetRandomFilename заключается в том, что он не создает файл, поэтому вам не нужно выполнять очистку, если вы используете имя для чего-то другого, чем файл. Как использовать его для имени папки.
Private Function GetTempFolder() As String
Dim folder As String = Path.Combine(Path.GetTempPath, Path.GetRandomFileName)
Do While Directory.Exists(folder) or File.Exists(folder)
folder = Path.Combine(Path.GetTempPath, Path.GetRandomFileName)
Loop
Return folder
End Function
Случайный Имя файла Пример:
C: \ Documents and Settings \ имя пользователя \ Local Settings \ Temp \ u3z5e0co.tvq
Вот вариант, использующий Guid для получения имени временной папки.
Private Function GetTempFolderGuid() As String
Dim folder As String = Path.Combine(Path.GetTempPath, Guid.NewGuid.ToString)
Do While Directory.Exists(folder) or File.Exists(folder)
folder = Path.Combine(Path.GetTempPath, Guid.NewGuid.ToString)
Loop
Return folder
End Function
guid Пример:
C: \ Documents and Settings \ имя пользователя \ Local Settings \ Temp \ 2dbc6db7-2d45-4b75-b27f-0bd492c60496