我的 wpf 应用程序可以将记事本文件保存在我在 app.config 中提供的固定路径上作为密钥,但我希望它保存在用户

本文关键字:保存 存在 路径 用户 我希望 密钥 应用程序 wpf 记事本 文件 config | 更新日期: 2023-09-27 18:31:36

private void WriteToFile(TextRange textRange)
    {
                  using (StreamWriter oWriter = new StreamWriter(ConfigurationManager.AppSettings["folderpath"], true))
        {
            oWriter.WriteLine(DateTime.Now.ToString());
            oWriter.WriteLine("*****************************************************************************");
            oWriter.WriteLine(textRange.Text);
            oWriter.WriteLine("*****************************************************************************");
            oWriter.WriteLine("*****************************************************************************");
            oWriter.Write("$");
        }
        MessageBox.Show(folderpath);
    }

代码中的文件夹路径是 app.config 中的一个键,值="C:''Users''MyPC''Desktop''textfile.txt"

如果我删除密钥并在代码中初始化字符串,它会显示错误 值不能为空.请帮忙!

我的 wpf 应用程序可以将记事本文件保存在我在 app.config 中提供的固定路径上作为密钥,但我希望它保存在用户

Environment.GetFolderPath 返回的目录字符串不包含尾随/因此生成的字符串最终为:C:'Users'User'Desktoptextfile.txt

我强烈建议使用 Path.Combine() 将文件名附加到路径中,以防止这种情况发生。

前任:

Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "textfile.txt")

代码的完整示例:

private void WriteToFile(TextRange textRange)
{
    string folderpath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "textfile.txt");
    using (StreamWriter oWriter = new StreamWriter(folderpath, true))
    {
        oWriter.WriteLine(DateTime.Now.ToString());
        oWriter.WriteLine("*****************************************************************************");
        oWriter.WriteLine(textRange.Text);
        oWriter.WriteLine("*****************************************************************************");
        oWriter.WriteLine("*****************************************************************************");
        oWriter.Write("$");
    }
    MessageBox.Show(folderpath);
}