0

我有一个 C# 应用程序,我想在其中创建一个文件:

   string fileName = "test.txt";  // a sample file name
        // Delete the file if it exists.
        if (System.IO.File.Exists(fileName))
        {
            System.IO.File.Delete(fileName);
        }
       // Create the file.
        using (System.IO.FileStream fs = System.IO.File.Create(fileName, 1024))
        {
            // Add some information to the file.
            byte[] info = new System.Text.UTF8Encoding(true).GetBytes("This is some text in the file.");
            fs.Write(info, 0, info.Length);
        }


        string s = "";
        using (System.IO.StreamReader sr = System.IO.File.OpenText(fileName))
        {

            while ((s = sr.ReadLine()) != null)
            {
                textBox1.Text += s;
            }
        }

我需要通过程序外部的密码保护文件,并且无需密码即可在程序内部访问该文件。

如何更改代码段以执行此任务?

4

2 回答 2

5

您无法使用开箱即用的密码保护文本文件。您需要使用其他应用程序封装它。

最简单的方法是使用 Zip 文件。

从Cheeso使用DotNetZip的这篇文章中得到:

using (var zip = new ZipFile())
{
    zip.Password= "VerySecret!!";
    zip.AddFile("test.txt");
    zip.Save("Archive.zip"); 
}

这导致 2 个步骤。

  1. 创建您的文件
  2. 压缩它们并选择一个密码。
于 2013-09-30T09:10:41.693 回答
1

如果您不想创建具有压缩/解压缩的 zip 文件,也可以加密文件。

用于加密图像文件的简单加密/解密方法

http://support.microsoft.com/kb/307010

于 2013-09-30T09:15:57.573 回答