好吧,我花了大量时间试图解决我读过的帖子所说的简单修复。
我想在我的文档中写一个文件,这是我的代码。
string st = @"C:\Users\<NAME>\Documents\Sample1.txt";
System.IO.StreamWriter file = new System.IO.StreamWriter(st);
file.WriteLine(Convert.ToString(Sample1[0]));
file.Close();
用户名在哪里。我收到以下错误
“mscorlib.ni.dll中出现'System.IO.DirectoryNotFoundException'类型的第一次机会异常。在mscorlib.ni.dll中发生了'System.IO.DirectoryNotFoundException'类型的异常,但未处理在用户代码“
中我正在使用Visual Studio Express进行Windows Phone开发。
如果有人能够指出我做错了什么,我将不胜感激。
感谢。
答案 0 :(得分:2)
我假设您在发布时使用了字符串。如果是这种情况,您应该使用SpecialFolder Enum。
var st = string.format(@"{0}\Sample1.txt",
Environment.GetFolderPath(Environment.SpecialFolder.Personal));
答案 1 :(得分:1)
您应该利用Environment.SpecialFolder
枚举并使用Path.Combine(...)
创建路径:
var path = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.Personal),
"Sample1.txt");
using (var sw = new StreamWriter(path))
{
sw.WriteLine(Convert.ToString(Sample1[0]));
}
此外,StreamWriter
应放在using
声明中,因为它是一次性的。
答案 2 :(得分:0)
要使用MyDocuments:
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
这将返回主机上MyDocuments的路径。
您可以在MSDN上查看SpecialFolders列表:http://msdn.microsoft.com/en-us/library/system.environment.specialfolder.aspx
编辑:我刚刚注意到你正在为Windows Phone开发。阅读MSDN上的其他SpecialFolders。