Leer en inglés

Compartir a través de


FileInfo.Encrypt Método

Definición

Cifra un archivo de forma que solo la cuenta utilizada para cifrarlo pueda descifrarlo.

C#
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public void Encrypt ();
C#
public void Encrypt ();
C#
[System.Runtime.InteropServices.ComVisible(false)]
public void Encrypt ();
Atributos

Excepciones

Se especificó una unidad no válida.

No se encontró el archivo descrito por el objeto FileInfo actual.

Se produjo un error de E/S al abrir el archivo.

El sistema de archivos no es NTFS.

El sistema operativo actual no es Microsoft Windows NT o posterior.

El archivo descrito por el actual objeto FileInfo es de solo lectura.

o bien

Esta operación no es compatible con la plataforma actual.

o bien

El llamador no dispone del permiso requerido.

Ejemplos

En el ejemplo de código siguiente se usa el Encrypt método y el Decrypt método para cifrar un archivo y, a continuación, descifrarlo.

C#
using System;
using System.IO;
using System.Security.AccessControl;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string FileName = @"c:\MyTest.txt";

                Console.WriteLine("Encrypt " + FileName);

                // Encrypt the file.
                AddEncryption(FileName);

                Console.WriteLine("Decrypt " + FileName);

                // Decrypt the file.
                RemoveEncryption(FileName);

                Console.WriteLine("Done");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }

        public static void AddEncryption(string FileName)
        {
            // Create a new FileInfo object.
            FileInfo fInfo = new FileInfo(FileName);
            if (!fInfo.Exists)
            {
                //Create the file.
                fInfo.Create();
            }
            // Add encryption.
            fInfo.Encrypt();
        }

        public static void RemoveEncryption(string FileName)
        {
            // Create a new FileInfo object.
            FileInfo fInfo = new FileInfo(FileName);
            if (!fInfo.Exists)
            {
                //Create the file.
                fInfo.Create();
            }
            // Remove encryption.
            fInfo.Decrypt();
        }
    }
}

//This code produces output similar to the following;
//results may vary based on the computer/file structure/etc.:
//
//Encrypt c:\MyTest.txt
//Decrypt c:\MyTest.txt
//Done

Comentarios

El Encrypt método permite cifrar un archivo para que solo la cuenta utilizada para llamar a este método pueda descifrarlo. Use el Decrypt método para descifrar un archivo cifrado por el Encrypt método .

Tanto el Encrypt método como el Decrypt método usan el proveedor de servicios criptográficos (CSP) instalado en el equipo y las claves de cifrado de archivo del proceso que llama al método .

El sistema de archivos actual debe tener el formato NTFS y el sistema operativo actual debe ser Microsoft Windows NT o posterior.

Se aplica a

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1