GZipStream 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
GZip 데이터 형식 사양을 사용하여 스트림을 압축 및 압축 해제하는 데 사용되는 메서드 및 속성을 제공합니다.
public ref class GZipStream : System::IO::Stream
public class GZipStream : System.IO.Stream
type GZipStream = class
inherit Stream
Public Class GZipStream
Inherits Stream
- 상속
- 상속
예제
다음 예제에서는 GZipStream 클래스를 사용하여 파일 디렉터리를 압축 및 압축 해제하는 방법을 보여줍니다.
using System;
using System.IO;
using System.IO.Compression;
public class FileCompressionModeExample
{
private const string Message = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";
private const string OriginalFileName = "original.txt";
private const string CompressedFileName = "compressed.gz";
private const string DecompressedFileName = "decompressed.txt";
public static void Run()
{
CreateFileToCompress();
CompressFile();
DecompressFile();
PrintResults();
DeleteFiles();
/*
Output:
The original file 'original.txt' is 445 bytes. Contents: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
The compressed file 'compressed.gz' is 283 bytes.
The decompressed file 'decompressed.txt' is 445 bytes. Contents: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
*/
}
private static void CreateFileToCompress() => File.WriteAllText(OriginalFileName, Message);
private static void CompressFile()
{
using FileStream originalFileStream = File.Open(OriginalFileName, FileMode.Open);
using FileStream compressedFileStream = File.Create(CompressedFileName);
using var compressor = new GZipStream(compressedFileStream, CompressionMode.Compress);
originalFileStream.CopyTo(compressor);
}
private static void DecompressFile()
{
using FileStream compressedFileStream = File.Open(CompressedFileName, FileMode.Open);
using FileStream outputFileStream = File.Create(DecompressedFileName);
using var decompressor = new GZipStream(compressedFileStream, CompressionMode.Decompress);
decompressor.CopyTo(outputFileStream);
}
private static void PrintResults()
{
long originalSize = new FileInfo(OriginalFileName).Length;
long compressedSize = new FileInfo(CompressedFileName).Length;
long decompressedSize = new FileInfo(DecompressedFileName).Length;
Console.WriteLine($"The original file '{OriginalFileName}' is {originalSize} bytes. Contents: \"{File.ReadAllText(OriginalFileName)}\"");
Console.WriteLine($"The compressed file '{CompressedFileName}' is {compressedSize} bytes.");
Console.WriteLine($"The decompressed file '{DecompressedFileName}' is {decompressedSize} bytes. Contents: \"{File.ReadAllText(DecompressedFileName)}\"");
}
private static void DeleteFiles()
{
File.Delete(OriginalFileName);
File.Delete(CompressedFileName);
File.Delete(DecompressedFileName);
}
}
Imports System
Imports System.IO
Imports System.IO.Compression
Public Class FileCompressionModeExample
Private Const Message As String = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
Private Const OriginalFileName As String = "original.txt"
Private Const CompressedFileName As String = "compressed.gz"
Private Const DecompressedFileName As String = "decompressed.txt"
Public Shared Sub Main()
CreateFileToCompress()
CompressFile()
DecompressFile()
PrintResults()
DeleteFiles()
' Output:
' The original file 'original.txt' weighs 445 bytes. Contents: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
' The compressed file 'compressed.gz' weighs 283 bytes.
' The decompressed file 'decompressed.txt' weighs 445 bytes. Contents: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
End Sub
Private Shared Sub CreateFileToCompress()
File.WriteAllText(OriginalFileName, Message)
End Sub
Private Shared Sub CompressFile()
Using originalFileStream As FileStream = File.Open(OriginalFileName, FileMode.Open)
Using compressedFileStream As FileStream = File.Create(CompressedFileName)
Using compressor = New GZipStream(compressedFileStream, CompressionMode.Compress)
originalFileStream.CopyTo(compressor)
End Using
End Using
End Using
End Sub
Private Shared Sub DecompressFile()
Using compressedFileStream As FileStream = File.Open(CompressedFileName, FileMode.Open)
Using outputFileStream As FileStream = File.Create(DecompressedFileName)
Using decompressor = New GZipStream(compressedFileStream, CompressionMode.Decompress)
decompressor.CopyTo(outputFileStream)
End Using
End Using
End Using
End Sub
Private Shared Sub PrintResults()
Dim originalSize As Long = New FileInfo(OriginalFileName).Length
Dim compressedSize As Long = New FileInfo(CompressedFileName).Length
Dim decompressedSize As Long = New FileInfo(DecompressedFileName).Length
Console.WriteLine($"The original file '{OriginalFileName}' weighs {originalSize} bytes. Contents: ""{File.ReadAllText(OriginalFileName)}""")
Console.WriteLine($"The compressed file '{CompressedFileName}' weighs {compressedSize} bytes.")
Console.WriteLine($"The decompressed file '{DecompressedFileName}' weighs {decompressedSize} bytes. Contents: ""{File.ReadAllText(DecompressedFileName)}""")
End Sub
Private Shared Sub DeleteFiles()
File.Delete(OriginalFileName)
File.Delete(CompressedFileName)
File.Delete(DecompressedFileName)
End Sub
End Class
설명
이 클래스는 손실 없는 파일 압축 및 압축 해제에 업계 표준 알고리즘을 사용하는 gzip 데이터 형식을 나타냅니다. 이 형식에는 데이터 손상을 감지하기 위한 주기적 중복성 검사 값이 포함됩니다. gzip 데이터 형식은 DeflateStream 클래스와 동일한 알고리즘을 사용하지만 다른 압축 형식을 사용하도록 확장할 수 있습니다. 이 형식은 특허가 적용되지 않는 방식으로 쉽게 구현할 수 있습니다.
.NET Framework 4.5부터 DeflateStream 클래스는 압축에 zlib 라이브러리를 사용합니다. 따라서 이전 버전의 .NET Framework에서 제공하는 것보다 더 나은 압축 알고리즘과 대부분의 경우 더 작은 압축 파일을 제공합니다.
확장명 .gz 파일에 기록된 압축된 GZipStream 개체는 여러 일반적인 압축 도구를 사용하여 압축을 풉니다. 그러나 이 클래스는 기본적으로 zip 보관 파일에서 파일을 추가하거나 파일을 추출하는 기능을 제공하지 않습니다.
DeflateStream 및 GZipStream 압축 기능은 스트림으로 노출됩니다. 데이터는 바이트 단위로 읽혀지므로 여러 패스를 수행하여 전체 파일 또는 큰 데이터 블록을 압축하는 가장 좋은 방법을 결정할 수 없습니다. DeflateStream 및 GZipStream 클래스는 압축되지 않은 데이터 원본에서 가장 잘 사용됩니다. 원본 데이터가 이미 압축된 경우 이러한 클래스를 사용하면 실제로 스트림의 크기가 증가할 수 있습니다.
상속자 참고
GZipStream상속하는 경우 CanSeek, CanWrite및 CanRead멤버를 재정의해야 합니다.
생성자
GZipStream(Stream, CompressionLevel) |
지정된 스트림 및 압축 수준을 사용하여 GZipStream 클래스의 새 인스턴스를 초기화합니다. |
GZipStream(Stream, CompressionLevel, Boolean) |
지정된 스트림 및 압축 수준을 사용하여 GZipStream 클래스의 새 인스턴스를 초기화하고 필요에 따라 스트림을 열어 둡니다. |
GZipStream(Stream, CompressionMode) |
지정된 스트림 및 압축 모드를 사용하여 GZipStream 클래스의 새 인스턴스를 초기화합니다. |
GZipStream(Stream, CompressionMode, Boolean) |
지정된 스트림 및 압축 모드를 사용하여 GZipStream 클래스의 새 인스턴스를 초기화하고 필요에 따라 스트림을 열어 둡니다. |
GZipStream(Stream, ZLibCompressionOptions, Boolean) |
GZip 데이터 형식 사양을 사용하여 스트림을 압축 및 압축 해제하는 데 사용되는 메서드 및 속성을 제공합니다. |
속성
BaseStream |
기본 스트림에 대한 참조를 가져옵니다. |
CanRead |
파일을 압축 해제하는 동안 스트림이 읽기를 지원하는지 여부를 나타내는 값을 가져옵니다. |
CanSeek |
스트림이 검색을 지원하는지 여부를 나타내는 값을 가져옵니다. |
CanTimeout |
현재 스트림이 시간 초과할 수 있는지 여부를 결정하는 값을 가져옵니다. (다음에서 상속됨 Stream) |
CanWrite |
스트림이 쓰기를 지원하는지 여부를 나타내는 값을 가져옵니다. |
Length |
이 속성은 지원되지 않으며 항상 NotSupportedExceptionthrow합니다. |
Position |
이 속성은 지원되지 않으며 항상 NotSupportedExceptionthrow합니다. |
ReadTimeout |
시간이 초과되기 전에 스트림이 읽기를 시도하는 기간을 결정하는 값(밀리초)을 가져오거나 설정합니다. (다음에서 상속됨 Stream) |
WriteTimeout |
시간 초과 전에 스트림이 쓰기를 시도하는 기간을 결정하는 값을 밀리초 단위로 가져오거나 설정합니다. (다음에서 상속됨 Stream) |
메서드
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
비동기 읽기 작업을 시작합니다. 대신 ReadAsync(Byte[], Int32, Int32) 메서드를 사용하는 것이 좋습니다. |
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
비동기 읽기 작업을 시작합니다. (대신 ReadAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.) (다음에서 상속됨 Stream) |
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
비동기 쓰기 작업을 시작합니다. 대신 WriteAsync(Byte[], Int32, Int32) 메서드를 사용하는 것이 좋습니다. |
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
비동기 쓰기 작업을 시작합니다. (대신 WriteAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.) (다음에서 상속됨 Stream) |
Close() |
현재 스트림을 닫고 현재 스트림과 연결된 모든 리소스(예: 소켓 및 파일 핸들)를 해제합니다. 이 메서드를 호출하는 대신 스트림이 제대로 삭제되었는지 확인합니다. (다음에서 상속됨 Stream) |
CopyTo(Stream) |
현재 스트림에서 바이트를 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CopyTo(Stream, Int32) |
현재 GZip 스트림에서 바이트를 읽고 지정된 버퍼 크기를 사용하여 다른 스트림에 씁니다. |
CopyTo(Stream, Int32) |
현재 스트림에서 바이트를 읽고 지정된 버퍼 크기를 사용하여 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CopyToAsync(Stream) |
현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CopyToAsync(Stream, CancellationToken) |
지정된 취소 토큰을 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CopyToAsync(Stream, Int32) |
지정된 버퍼 크기를 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CopyToAsync(Stream, Int32, CancellationToken) |
현재 GZip 스트림에서 바이트를 비동기적으로 읽고 지정된 버퍼 크기를 사용하여 다른 스트림에 씁니다. |
CopyToAsync(Stream, Int32, CancellationToken) |
지정된 버퍼 크기 및 취소 토큰을 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다. (다음에서 상속됨 Stream) |
CreateObjRef(Type) |
원격 개체와 통신하는 데 사용되는 프록시를 생성하는 데 필요한 모든 관련 정보를 포함하는 개체를 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
CreateWaitHandle() |
사용되지 않음.
사용되지 않음.
사용되지 않음.
WaitHandle 개체를 할당합니다. (다음에서 상속됨 Stream) |
Dispose() |
Stream사용하는 모든 리소스를 해제합니다. (다음에서 상속됨 Stream) |
Dispose(Boolean) |
GZipStream 사용하는 관리되지 않는 리소스를 해제하고 필요에 따라 관리되는 리소스를 해제합니다. |
DisposeAsync() |
GZipStream사용되는 관리되지 않는 리소스를 비동기적으로 해제합니다. |
DisposeAsync() |
Stream사용되는 관리되지 않는 리소스를 비동기적으로 해제합니다. (다음에서 상속됨 Stream) |
EndRead(IAsyncResult) |
보류 중인 비동기 읽기가 완료되기를 기다립니다. 대신 ReadAsync(Byte[], Int32, Int32) 메서드를 사용하는 것이 좋습니다. |
EndRead(IAsyncResult) |
보류 중인 비동기 읽기가 완료되기를 기다립니다. (대신 ReadAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.) (다음에서 상속됨 Stream) |
EndWrite(IAsyncResult) |
비동기 쓰기 작업의 끝을 처리합니다. 대신 WriteAsync(Byte[], Int32, Int32) 메서드를 사용하는 것이 좋습니다. |
EndWrite(IAsyncResult) |
비동기 쓰기 작업을 종료합니다. (대신 WriteAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.) (다음에서 상속됨 Stream) |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
Flush() |
내부 버퍼를 플러시합니다. |
FlushAsync() |
이 스트림에 대한 모든 버퍼를 비동기적으로 지우고 버퍼링된 데이터가 기본 디바이스에 기록되도록 합니다. (다음에서 상속됨 Stream) |
FlushAsync(CancellationToken) |
이 GZip 스트림에 대한 모든 버퍼를 비동기적으로 지우고, 버퍼링된 데이터를 기본 디바이스에 쓰게 하고, 취소 요청을 모니터링합니다. |
FlushAsync(CancellationToken) |
이 스트림에 대한 모든 버퍼를 비동기적으로 지우고, 버퍼링된 데이터를 기본 디바이스에 쓰게 하고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
GetHashCode() |
기본 해시 함수로 사용됩니다. (다음에서 상속됨 Object) |
GetLifetimeService() |
사용되지 않음.
이 인스턴스의 수명 정책을 제어하는 현재 수명 서비스 개체를 검색합니다. (다음에서 상속됨 MarshalByRefObject) |
GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
InitializeLifetimeService() |
사용되지 않음.
이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다. (다음에서 상속됨 MarshalByRefObject) |
MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
MemberwiseClone(Boolean) |
현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
ObjectInvariant() |
사용되지 않음.
Contract대한 지원을 제공합니다. (다음에서 상속됨 Stream) |
Read(Byte[], Int32, Int32) |
압축 해제된 바이트를 지정된 바이트 배열로 읽습니다. |
Read(Span<Byte>) |
현재 GZip 스트림에서 바이트 범위로 바이트 시퀀스를 읽고 읽은 바이트 수만큼 GZip 스트림 내의 위치를 이동합니다. |
Read(Span<Byte>) |
파생 클래스에서 재정의되는 경우 현재 스트림에서 바이트 시퀀스를 읽고 읽은 바이트 수만큼 스트림 내의 위치를 앞으로 이동합니다. (다음에서 상속됨 Stream) |
ReadAsync(Byte[], Int32, Int32) |
현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고 읽은 바이트 수만큼 스트림 내의 위치를 이동합니다. (다음에서 상속됨 Stream) |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
현재 GZip 스트림에서 바이트 배열로 바이트 시퀀스를 비동기적으로 읽고, GZip 스트림 내의 위치를 읽은 바이트 수만큼 이동하고, 취소 요청을 모니터링합니다. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
ReadAsync(Memory<Byte>, CancellationToken) |
현재 GZip 스트림에서 바이트 메모리 영역으로 바이트 시퀀스를 비동기적으로 읽고, GZip 스트림 내의 위치를 읽은 바이트 수만큼 이동하고, 취소 요청을 모니터링합니다. |
ReadAsync(Memory<Byte>, CancellationToken) |
현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
ReadAtLeast(Span<Byte>, Int32, Boolean) |
현재 스트림에서 최소 바이트 수를 읽고 읽은 바이트 수만큼 스트림 내의 위치를 앞으로 이동합니다. (다음에서 상속됨 Stream) |
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken) |
현재 스트림에서 최소 바이트 수를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
ReadByte() |
GZip 스트림에서 바이트를 읽고 스트림 내의 위치를 1바이트씩 이동하거나 GZip 스트림의 끝에 있는 경우 -1 반환합니다. |
ReadByte() |
스트림에서 바이트를 읽고 스트림 내의 위치를 1 바이트씩 이동하거나 스트림의 끝에 있는 경우 -1 반환합니다. (다음에서 상속됨 Stream) |
ReadExactly(Byte[], Int32, Int32) |
현재 스트림에서 |
ReadExactly(Span<Byte>) |
현재 스트림에서 바이트를 읽고 |
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
현재 스트림에서 |
ReadExactlyAsync(Memory<Byte>, CancellationToken) |
현재 스트림에서 바이트를 비동기적으로 읽고, |
Seek(Int64, SeekOrigin) |
이 속성은 지원되지 않으며 항상 NotSupportedExceptionthrow합니다. |
SetLength(Int64) |
이 속성은 지원되지 않으며 항상 NotSupportedExceptionthrow합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
Write(Byte[], Int32, Int32) |
지정된 바이트 배열에서 기본 GZip 스트림에 압축된 바이트를 씁니다. |
Write(ReadOnlySpan<Byte>) |
읽기 전용 바이트 범위에서 현재 GZip 스트림에 바이트 시퀀스를 쓰고 이 GZip 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다. |
Write(ReadOnlySpan<Byte>) |
파생 클래스에서 재정의되는 경우 바이트 시퀀스를 현재 스트림에 쓰고 이 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다. (다음에서 상속됨 Stream) |
WriteAsync(Byte[], Int32, Int32) |
바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고 이 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다. (다음에서 상속됨 Stream) |
WriteAsync(Byte[], Int32, Int32, CancellationToken) |
지정된 바이트 배열에서 기본 GZip 스트림에 압축된 바이트를 비동기적으로 씁니다. |
WriteAsync(Byte[], Int32, Int32, CancellationToken) |
바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고, 기록된 바이트 수만큼 이 스트림 내의 현재 위치를 발전시키고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
지정된 읽기 전용 바이트 메모리 영역에서 압축된 바이트를 기본 GZip 스트림에 비동기적으로 씁니다. |
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고, 기록된 바이트 수만큼 이 스트림 내의 현재 위치를 발전시키고, 취소 요청을 모니터링합니다. (다음에서 상속됨 Stream) |
WriteByte(Byte) |
현재 GZip 스트림에 바이트를 쓰고 이 GZip 스트림 내의 현재 위치를 1씩 진행합니다. |
WriteByte(Byte) |
스트림의 현재 위치에 바이트를 쓰고 스트림 내의 위치를 1 바이트씩 진행합니다. (다음에서 상속됨 Stream) |
확장 메서드
CopyToAsync(Stream, PipeWriter, CancellationToken) |
취소 토큰을 사용하여 Stream 바이트를 비동기적으로 읽고 지정된 PipeWriter씁니다. |
AsInputStream(Stream) |
Windows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 입력 스트림으로 변환합니다. |
AsOutputStream(Stream) |
Windows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 출력 스트림으로 변환합니다. |
AsRandomAccessStream(Stream) |
지정된 스트림을 임의 액세스 스트림으로 변환합니다. |
ConfigureAwait(IAsyncDisposable, Boolean) |
비동기 삭제 가능 파일에서 반환된 작업에 대한 대기가 수행되는 방법을 구성합니다. |
적용 대상
추가 정보
- DeflateStream, GZipStream 및 CryptoStream 부분 및 0바이트 읽기
.NET