繁体   English   中英

使用文件对话框保存时,拒绝访问路径

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM