Maison >développement back-end >C++ >Comment puis-je décompresser par programme des fichiers dans .NET en toute sécurité ?

Comment puis-je décompresser par programme des fichiers dans .NET en toute sécurité ?

DDD
DDDoriginal
2024-12-25 03:34:08730parcourir

How Can I Programmatically Unzip Files in .NET Securely?

Décompresser des fichiers par programme dans .NET

À la recherche d'une méthode sécurisée et fiable pour extraire des fichiers compressés dans votre application .NET, envisagez l'approche suivante :

À partir de .NET 4.5, vous pouvez exploiter la classe ZipFile native dans l'assembly System.IO.Compression.FileSystem. Cette classe fournit une interface pratique pour les opérations de compression et de décompression.

Pour décompresser un fichier à l'aide de ZipFile :

  1. Ajoutez une référence DLL au System.IO.Compression.FileSystem.dll assembly.
  2. Utiliser la méthode ZipFile.ExtractToDirectory, en spécifiant le chemin d'accès au fichier zippé et l'extraction souhaitée destination.

Voici un exemple illustrant le processus :

using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            // Define file paths
            string startPath = @"\path\to\source_directory";
            string zipPath = @"\path\to\result.zip";
            string extractPath = @"\path\to\extraction_directory";

            // Create a ZIP archive from the source directory
            System.IO.Compression.ZipFile.CreateFromDirectory(startPath, zipPath);

            // Extract the ZIP archive to the destination directory
            System.IO.Compression.ZipFile.ExtractToDirectory(zipPath, extractPath);
        }
    }
}

Cette approche offre un moyen sécurisé et efficace de gérer les fichiers ZIP sans avoir besoin de bibliothèques externes ou d'intervention manuelle de l'utilisateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn