2009-04-15 12 views

cevap

43

kullanım

Path.GetTempPath(); 

veya

Path.GetTempFileName(); 

yorumcu belirttiği gibi, GetTempFileName() ÅŸan değil - ama Guıd'lerinin dayalı benzersiz dosya adları oluşturabilirsiniz.

+4

Not olduğunu GetTenpFileName olabilir doğal yarış koşullarından dolayı birden fazla zamana gereksinim duyulmalıdır (başka bir şey GetTempFileName öğesinden dönüş ve dosya açma arasında aynı dosyayı oluşturabilir). – Richard

+0

haklısınız, bilgi için teşekkürler – tanascius

+0

@Richard Başka bir uygulama/işlem mi yoksa bağlamdaki başka bir iş parçacığı mı demek istiyorsun **? –

7

Kullanım System.IO.Path Windows API işlevi GetTempPath()

using System.IO 

... 

myTempPath = Path.GetTempPath(); 

Sen dosya sistemi de programınızın yürütülürken değişebilir bilmelidir (MSDN bakınız). Temp yolu değişebilir (olası değil) veya geçici dosyanız kullanıcı tarafından taşınmış veya silinmiş olabilir.

Her eriştiğinizde varlığını kontrol etmeye hazır olun ve incelikle bulunmadığında durumu ele alın.

11

diğerleri

System.IO.Path.GetTempPath() 

ilgili beni alt Ama aynı zamanda uygulama verileri klasörüne bakabilirsiniz. Bu, dosyanızın tüm kullanıcılar için paylaşabileceği veya kullanıcı başına 1 olduğu gibi, dosya üzerinde daha fazla kontrol olanağı sağlar. Eğer geçici bir konuma ve kısmi güven çalışmalarına yazmak için başvurunuzu gerekiyorsa

Application.CommonAppDataPath 
Application.UserAppDataPath 
0

Eğer geçici bir konuma istinaden kendi özel geçici dosya adı oluşturmak istiyorsanız, ben PATH kapalı şerit ve kendi dosya adı uygulamak için, böyle bir şey kullanmak ...

string wsPDFfile = Path.GetTempPath() + wsStudentID + "_" + Path.GetFileNameWithoutExtension(Path.GetTempFileName()) + ".pdf"; 
İlgili konular