다음을 통해 공유


Stream.CopyTo 메서드

정의

현재 스트림에서 바이트를 읽어서 다른 스트림에 해당 바이트를 씁니다. 두 스트림 위치는 복사된 바이트 수에 따라 고급입니다.

오버로드

CopyTo(Stream)

현재 스트림에서 바이트를 읽어서 다른 스트림에 해당 바이트를 씁니다. 두 스트림 위치는 복사된 바이트 수에 따라 고급입니다.

CopyTo(Stream, Int32)

현재 스트림에서 바이트를 읽어서 지정된 버퍼 크기로 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수에 따라 고급입니다.

CopyTo(Stream)

Source:
Stream.cs
Source:
Stream.cs
Source:
Stream.cs

현재 스트림에서 바이트를 읽어서 다른 스트림에 해당 바이트를 씁니다. 두 스트림 위치는 복사된 바이트 수에 따라 고급입니다.

public:
 void CopyTo(System::IO::Stream ^ destination);
public void CopyTo (System.IO.Stream destination);
member this.CopyTo : System.IO.Stream -> unit
Public Sub CopyTo (destination As Stream)

매개 변수

destination
Stream

현재 스트림의 내용을 복사할 스트림입니다.

예외

destination이(가) null인 경우

현재 스트림이 읽기를 지원하지 않습니다.

또는

destination이 쓰기를 지원하지 않는 경우

CopyTo(Stream) 메서드가 호출되기 전에 현재 스트림 또는 destination이 닫힌 경우

I/O 오류가 발생했습니다.

예제

다음 예제에서는 의 FileStreamMemoryStream콘텐츠를 에 복사합니다.

// Create the streams.
MemoryStream destination = new MemoryStream();

using (FileStream source = File.Open(@"c:\temp\data.dat",
    FileMode.Open))
{

    Console.WriteLine("Source length: {0}", source.Length.ToString());

    // Copy source to destination.
    source.CopyTo(destination);
}

Console.WriteLine("Destination length: {0}", destination.Length.ToString());
' Create the streams.
Dim destination As New MemoryStream()

Using source As FileStream = File.Open("c:\temp\data.dat", _
                                       FileMode.Open)
    Console.WriteLine("Source length: {0}", source.Length.ToString())

    ' Copy source to destination.
    source.CopyTo(destination)

End Using
Console.WriteLine("Destination length: {0}", destination.Length.ToString())

설명

복사는 현재 스트림의 현재 위치에서 시작되며 복사 작업이 완료된 후 대상 스트림의 위치를 다시 설정하지 않습니다.

적용 대상

CopyTo(Stream, Int32)

Source:
Stream.cs
Source:
Stream.cs
Source:
Stream.cs

현재 스트림에서 바이트를 읽어서 지정된 버퍼 크기로 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수에 따라 고급입니다.

public:
 void CopyTo(System::IO::Stream ^ destination, int bufferSize);
public:
 virtual void CopyTo(System::IO::Stream ^ destination, int bufferSize);
public void CopyTo (System.IO.Stream destination, int bufferSize);
public virtual void CopyTo (System.IO.Stream destination, int bufferSize);
member this.CopyTo : System.IO.Stream * int -> unit
abstract member CopyTo : System.IO.Stream * int -> unit
override this.CopyTo : System.IO.Stream * int -> unit
Public Sub CopyTo (destination As Stream, bufferSize As Integer)
Public Overridable Sub CopyTo (destination As Stream, bufferSize As Integer)

매개 변수

destination
Stream

현재 스트림의 내용을 복사할 스트림입니다.

bufferSize
Int32

버퍼의 크기입니다. 이 값은 0보다 커야 합니다. 기본 크기는 81920입니다.

예외

destination이(가) null인 경우

bufferSize가 음수이거나 0인 경우

현재 스트림이 읽기를 지원하지 않습니다.

또는

destination이 쓰기를 지원하지 않는 경우

CopyTo(Stream) 메서드가 호출되기 전에 현재 스트림 또는 destination이 닫힌 경우

I/O 오류가 발생했습니다.

설명

복사는 현재 스트림의 현재 위치에서 시작되며 복사 작업이 완료된 후 대상 스트림의 위치를 다시 설정하지 않습니다.

적용 대상