溫馨提示×

C# Directory類文件夾加密怎么做

c#
小樊
100
2024-08-05 13:59:11
欄目: 編程語言

在C#中,你可以使用System.Security.Cryptography命名空間中的Aes類來對文件夾進行加密。以下是一個簡單的示例代碼來實現(xiàn)文件夾加密:

using System;
using System.IO;
using System.Security.Cryptography;

class Program
{
    static void Main()
    {
        string folderPath = @"C:\YourFolderPath";
        string password = "YourPassword";

        EncryptFolder(folderPath, password);
    }

    static void EncryptFolder(string folderPath, string password)
    {
        using (Aes aes = Aes.Create())
        {
            byte[] passwordBytes = System.Text.Encoding.UTF8.GetBytes(password);

            aes.Key = passwordBytes;
            aes.IV = passwordBytes;

            string[] files = Directory.GetFiles(folderPath, "*", SearchOption.AllDirectories);

            foreach (string file in files)
            {
                using (FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read))
                {
                    using (FileStream encryptedFs = new FileStream(file + ".encrypted", FileMode.Create))
                    {
                        using (CryptoStream cs = new CryptoStream(encryptedFs, aes.CreateEncryptor(), CryptoStreamMode.Write))
                        {
                            fs.CopyTo(cs);
                        }
                    }
                }

                File.Delete(file);
            }
        }
    }
}

在這段代碼中,我們使用AES加密算法對文件夾中的所有文件進行加密。你可以根據(jù)自己的需求調(diào)整加密算法和加密方式。請注意,這只是一個簡單的示例,實際應(yīng)用中可能需要更復(fù)雜的加密方法和密鑰管理。

0