Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Costruttore DeflateStream (Stream, CompressionLevel)

.NET Framework (current version)
 

Data di pubblicazione: ottobre 2016

Inizializza una nuova istanza della classe DeflateStream usando il livello di compressione del flusso specificato.

Spazio dei nomi:   System.IO.Compression
Assembly:  System (in System.dll)

public DeflateStream(
	Stream stream,
	CompressionLevel compressionLevel
)

Parametri

stream
Type: System.IO.Stream

Flusso da comprimere.

compressionLevel
Type: System.IO.Compression.CompressionLevel

Uno dei valori di enumerazione che indica se evidenziare l'efficacia di velocità o compressione quando si comprime il flusso.

Exception Condition
ArgumentNullException

stream è null.

ArgumentException

Il flusso non supporta operazioni di scrittura, ad esempio la compressione. (Il CanWrite è di proprietà dell'oggetto flusso false.)

Utilizzare questo costruttore quando si desidera specificare se è più importante per un'istanza di efficienza nella compressione o la velocità di DeflateStream (classe).

Questo overload del costruttore utilizza la modalità di compressione Compress. Per impostare la modalità di compressione su un altro valore, utilizzare il DeflateStream(Stream, CompressionMode) o DeflateStream(Stream, CompressionMode, Boolean) overload.

Nell'esempio seguente viene illustrato come impostare il livello di compressione quando si crea un DeflateStream oggetto.

using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string directoryPath = @"c:\users\public\reports";
            DirectoryInfo directorySelected = new DirectoryInfo(directoryPath);

            foreach (FileInfo fileToCompress in directorySelected.EnumerateFiles())
            {
                Compress(fileToCompress);
            }
        }

        public static void Compress(FileInfo fileToCompress)
        {
            using (FileStream originalFileStream = fileToCompress.OpenRead())
            {
                if ((File.GetAttributes(fileToCompress.FullName) & FileAttributes.Hidden) != FileAttributes.Hidden & fileToCompress.Extension != ".cmp")
                {
                    using (FileStream compressedFileStream = File.Create(fileToCompress.FullName + ".cmp"))
                    {
                        using (DeflateStream compressionStream = new DeflateStream(compressedFileStream, CompressionLevel.Fastest))
                        {
                            originalFileStream.CopyTo(compressionStream);
                        }
                    }
                }
            }
        }
    }
}

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 4.5
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: