2013-09-30 3 views
-2

У меня есть 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; 
      } 
     } 

мне нужно защитить файл паролем вне программы и файл доступен внутри программа без пароля.

Как я могу изменить фрагмент, чтобы выполнить эту задачу?

+3

Если вы даже не пытались сделать это самостоятельно, пожалуйста, ссылку на пространство имен System.Security.Cryptography и дать ей идти. – Ashigore

ответ

3

Вы не можете защитить текстовый файл с паролем из коробки. Вам нужно будет инкапсулировать его, а другое приложение - сделать это.

Простейшим способом было бы использовать Zip-файл.

Как принято в этом виде post от Cheeso использованием DotNetZip:

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

Это приводит в 2 этапа.

  1. Создать файлы
  2. ZiP их и выбрать пароль.
+0

это дает мне ошибку ZipFile() class –

Смежные вопросы