【问题标题】:How to save text file in windows form application如何在 Windows 窗体应用程序中保存文本文件
【发布时间】:2019-02-14 19:38:59
【问题描述】:

我正在创建一个 Windows 窗体应用程序。出于安全原因,我想将许可证信息存储到文本文件中并希望对其进行加密。

var serializer = new XmlSerializer(typeof(Licence));

var saveData = new Licence
{
    ProductId = txtProductID.Text,

    ProductKey = txtProductKey.Text,

    CreatedDate = validate.CreationDate,

    ExpireDate = validate.ExpireDate,

    DaysLeft = validate.DaysLeft
};

using (var writeFile = File.OpenWrite("data.txt"))
{
    serializer.Serialize(writeFile, saveData);
}

使用此代码我可以成功创建文本文件。但是当我发布这个项目并安装它时,它给了我错误。 错误信息是...

拒绝访问路径“C:\Program Files (x86)\WebenixSystem\Metro Whole Sale\data.txt”。

**************异常文本************** System.UnauthorizedAccessException:对路径“C:\Program Files (x86)\WebenixSystem\Metro Whole Sale\data.txt”的访问被拒绝。

如何解决此问题,如何加密此 txt 文件?请帮忙...

【问题讨论】:

标签: c# winforms


【解决方案1】:

正如错误提示 - 您无权访问您尝试将文件保存到的路径。
由于文件将被加密,您不必隐藏它。因此,您可以将其保存在用户帐户的文档文件夹中。

使用这行代码将返回“我的文档”文件夹的路径。您可以在其中创建一个新文件夹或将文件直接保存到此路径。

请注意,这是一个相对路径,因此它适用于所有用户。

String pathToDocuments = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

【讨论】:

    【解决方案2】:

    另请注意:许可信息不会在不同用户之间共享。如果用户使用不同的帐户登录,将找不到许可证数据,因为每个用户都有自己的“MyDocuments”、“AppData”等...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-26
      • 1970-01-01
      • 2021-07-12
      • 1970-01-01
      相关资源
      最近更新 更多