[英]Access to the path is denied when save with filedialog
我有两种保存到文件的形式:
一。 我将路径保留在代码中。
二。 我从用户那里得到路径。
当我在代码中保存路径时,保存成功。 当我从用户那里得到(与代码中相同的路径)时,出现以下错误:
Access to the path is denied
这是我的保存功能(两种功能都相同):
public void SaveFile(string path)
{
try
{
XmlSerializer serializer = new XmlSerializer(typeof(List<MyClass>));
TextWriter textWriter = new StreamWriter(path);
serializer.Serialize(textWriter, MyList);
textWriter.Close();
}
catch (Exception e)
{
}
}
从用户我发送到此功能如下:
public void UserSave()
{
//Open dialog in the path that i have in the code:
fileDialog.InitialDirectory = MyPath;
if (fileDialog.ShowDialog() == DialogResult.OK)
{
SaveFile(Path.GetDirectoryName(fileDialog.FileName));
}
}
可能是什么问题呢?
我在以下行中发现了错误:
SaveFile(Path.GetDirectoryName(fileDialog.FileName));
它基本上将其保存为文件夹而不是文件 ,因此它掉了。
我将其更改为:
SaveFile(fileDialog.FileName);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.