将文件写入临时文件夹

时间:2013-11-21 20:01:24

标签: c# io path

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

每台PC上的路径可能不同,所以我尝试使用%temp%\SaveFile.txt,但它没有用。

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

例如,我可以使用环境变量来存储%appdata%中的文件吗?

5 个答案:

答案 0 :(得分:82)

答案 1 :(得分:35)

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

答案 2 :(得分:6)

您可以使用以下方式动态检索临时路径,并且最好使用它而不是使用硬编码字符串值进行临时位置。它将根据需要返回临时文件夹或临时文件。

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

Path.GetTempFileName();

答案 3 :(得分:2)

System.IO.Path.GetTempPath()

TMP环境变量指定的路径。 TEMP环境变量指定的路径。 USERPROFILE环境变量指定的路径。 Windows目录。

答案 4 :(得分:1)

对于%appdata%,请查看

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)