다음을 통해 공유


Stream.Write 메서드

파생 클래스를 재정의될 때 현재 스트림에 바이트의 시퀀스를 쓰고 쓰여진 바이트 수만큼 이 스트림 내에서 앞으로 이동합니다.

네임스페이스: System.IO
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
Public MustOverride Sub Write ( _
    buffer As Byte(), _
    offset As Integer, _
    count As Integer _
)
‘사용 방법
Dim instance As Stream
Dim buffer As Byte()
Dim offset As Integer
Dim count As Integer

instance.Write(buffer, offset, count)
public abstract void Write (
    byte[] buffer,
    int offset,
    int count
)
public:
virtual void Write (
    array<unsigned char>^ buffer, 
    int offset, 
    int count
) abstract
public abstract void Write (
    byte[] buffer, 
    int offset, 
    int count
)
public abstract function Write (
    buffer : byte[], 
    offset : int, 
    count : int
)

매개 변수

  • buffer
    바이트 배열입니다. 이 메서드는 buffer의 count 바이트를 현재 스트림으로 복사합니다.
  • offset
    현재 스트림으로 바이트를 복사하기 시작할 buffer의 바이트 오프셋(0부터 시작)입니다.
  • count
    현재 스트림에 쓰는 바이트 수입니다.

예외

예외 형식 조건

ArgumentException

offset과 count의 합계가 버퍼 길이보다 큰 경우

ArgumentNullException

buffer가 Null 참조(Visual Basic의 경우 Nothing)인 경우

ArgumentOutOfRangeException

offset 또는 count가 음수인 경우

IOException

I/O 오류가 발생하는 경우

NotSupportedException

스트림이 쓰기를 지원하지 않는 경우

ObjectDisposedException

스트림이 닫힌 후 메서드가 호출된 경우

설명

파일을 만들고 파일에 텍스트를 쓰는 방법에 대한 예제를 보려면 방법: 파일에 텍스트 쓰기를 참조하십시오. 파일에서 텍스트를 읽는 방법에 대한 예제를 보려면 방법: 파일의 텍스트 읽기를 참조하십시오. 이진 파일을 읽거나 쓰는 방법에 대한 예제를 보려면 방법: 새로 만든 데이터 파일 읽기 및 쓰기를 참조하십시오.

현재 인스턴스가 쓰기를 지원하는지 여부를 결정하려면 CanWrite 속성을 사용합니다.

쓰기 작업이 성공적으로 수행되면 스트림 내의 위치는 쓴 바이트 수만큼 앞으로 이동합니다. 예외가 발생하면 스트림 내의 위치가 변경되지 않습니다.

기본적으로 구현하면 비동기 BeginWrite 메서드가 호출됩니다.

예제

다음 예제에서는 Write 메서드를 사용하여 입력 스트림을 출력 스트림에 복사하는 방법을 보여 줍니다.

Const size As Integer = 4096
Dim bytes(4096) As Byte
Dim numBytes As Integer
numBytes = input.Read(bytes, 0, size)
While numBytes > 0
    output.Write(bytes, 0, numBytes)
    numBytes = input.Read(bytes, 0, size)
End While
const int size = 4096;
byte[] bytes = new byte[4096];
int numBytes;
while((numBytes = input.Read(bytes, 0, size)) > 0)
    output.Write(bytes, 0, numBytes);
const int size = 4096;
array<Byte>^ bytes = gcnew array<Byte>(4096);
int numBytes;
while ( (numBytes = input->Read( bytes, 0, size )) > 0 )
      output->Write( bytes, 0, numBytes );
final int size = 4096;
ubyte bytes[] = new ubyte[4096];
int numBytes;
while (((numBytes = input.Read(bytes, 0, size)) > 0)) {
    output.Write(bytes, 0, numBytes);
} 

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

Stream 클래스
Stream 멤버
System.IO 네임스페이스

기타 리소스

파일 및 스트림 I/O
방법: 파일의 텍스트 읽기
방법: 파일에 텍스트 쓰기