将文件写入临时文件夹

我想使用StreamWriter将文件写入临时文件夹。

它可能是在每个PC上不同的path,所以我尝试使用%temp%\SaveFile.txt但它没有工作。

如何使用环境variables保存到临时文件夹?

例如,我可以使用环境variables来存储%appdata%文件吗?

Path类在这里非常有用。
你有两个方法叫

Path.GetTempFileName

Path.GetTempPath

这可以解决你的问题

例如,你可以写:(如果你不介意确切的文件名)

 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"); } 

您可以dynamic检索一个临时path使用如下,更好地使用它,而不是使用硬编码的string值的临时location.It将返回临时文件夹或临时文件,只要你想。

 string filePath = Path.Combine(Path.GetTempPath(),"SaveFile.txt"); 

要么

 Path.GetTempFileName(); 

System.IO.Path.GetTempPath()

由TMP环境variables指定的path。 由TEMP环境variables指定的path。 USERPROFILE环境variables指定的path。 Windows目录。

对于%appdata%来看看

 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)