我想使用StreamWriter
将文件写入临时文件夹。
每台PC上的路径可能不同,所以我尝试使用%temp%\SaveFile.txt
,但它没有用。
如何使用环境变量保存到临时文件夹?
例如,我可以使用环境变量来存储%appdata%
中的文件吗?
答案 0 :(得分:82)
string result = Path.GetTempPath();
http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath(v=vs.110).aspx
答案 1 :(得分:35)
Path类在这里非常有用。
你得到两个叫做
可以解决您的问题
所以例如你可以写:(如果你不介意确切的文件名)
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)