BinaryWriter BinaryWriter BinaryWriter BinaryWriter Class

정의

기본 이진 형식을 스트림에 쓰고 특정 인코딩으로 된 문자열 쓰기를 지원합니다.Writes primitive types in binary to a stream and supports writing strings in a specific encoding.

public ref class BinaryWriter : IDisposable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class BinaryWriter : IDisposable
type BinaryWriter = class
    interface IDisposable
Public Class BinaryWriter
Implements IDisposable
상속
BinaryWriterBinaryWriterBinaryWriterBinaryWriter
특성
구현

예제

다음 코드 예제에는 저장 하 고 파일에서 애플리케이션 설정을 검색 하는 방법을 보여 줍니다.The following code example demonstrates how to store and retrieve application settings in a file.

using System;
using System.IO;

class ConsoleApplication
{
    const string fileName = "AppSettings.dat";

    static void Main()
    {
        WriteDefaultValues();
        DisplayValues();
    }

    public static void WriteDefaultValues()
    {
        using (BinaryWriter writer = new BinaryWriter(File.Open(fileName, FileMode.Create)))
        {
            writer.Write(1.250F);
            writer.Write(@"c:\Temp");
            writer.Write(10);
            writer.Write(true);
        }
    }

    public static void DisplayValues()
    {
        float aspectRatio;
        string tempDirectory;
        int autoSaveTime;
        bool showStatusBar;

        if (File.Exists(fileName))
        {
            using (BinaryReader reader = new BinaryReader(File.Open(fileName, FileMode.Open)))
            {
                aspectRatio = reader.ReadSingle();
                tempDirectory = reader.ReadString();
                autoSaveTime = reader.ReadInt32();
                showStatusBar = reader.ReadBoolean();
            }

            Console.WriteLine("Aspect ratio set to: " + aspectRatio);
            Console.WriteLine("Temp directory is: " + tempDirectory);
            Console.WriteLine("Auto save time set to: " + autoSaveTime);
            Console.WriteLine("Show status bar: " + showStatusBar);
        }
    }
}
Imports System.IO

Module Module1
    Const fileName As String = "AppSettings.dat"

    Sub Main()
        WriteDefaultValues()
        DisplayValues()
    End Sub

    Sub WriteDefaultValues()
        Using writer As BinaryWriter = New BinaryWriter(File.Open(fileName, FileMode.Create))
            writer.Write(1.25F)
            writer.Write("c:\Temp")
            writer.Write(10)
            writer.Write(True)
        End Using
    End Sub

    Sub DisplayValues()
        Dim aspectRatio As Single
        Dim tempDirectory As String
        Dim autoSaveTime As Integer
        Dim showStatusBar As Boolean

        If (File.Exists(fileName)) Then

            Using reader As BinaryReader = New BinaryReader(File.Open(fileName, FileMode.Open))
                aspectRatio = reader.ReadSingle()
                tempDirectory = reader.ReadString()
                autoSaveTime = reader.ReadInt32()
                showStatusBar = reader.ReadBoolean()
            End Using

            Console.WriteLine("Aspect ratio set to: " & aspectRatio)
            Console.WriteLine("Temp directory is: " & tempDirectory)
            Console.WriteLine("Auto save time set to: " & autoSaveTime)
            Console.WriteLine("Show status bar: " & showStatusBar)
        End If
    End Sub

End Module

설명

BinaryWriter 클래스는 기본 데이터 형식을 스트림으로 작성을 간소화 하는 방법을 제공 합니다.The BinaryWriter class provides methods that simplify writing primitive data types to a stream. 예를 들어 사용할 수 있습니다는 Write 메서드를 부울 값을 1 바이트 값으로 스트림에 씁니다.For example, you can use the Write method to write a Boolean value to the stream as a one-byte value. 클래스는 다른 데이터 형식을 지 원하는 쓰기 메서드를 포함 합니다.The class includes write methods that support different data types.

새 인스턴스를 만들 때 합니다 BinaryWriter 클래스를 삭제 한 후 열고 스트림을 것인지 및을 쓸 스트림을 제공 하 고 필요에 따라 인코딩 유형을 지정 합니다 BinaryWriter 개체입니다.When you create a new instance of the BinaryWriter class, you provide the stream to write to, and optionally specify the type of encoding and whether to leave the stream open after disposing the BinaryWriter object. 인코딩 유형을 지정 하지 않으면, u t F-8이 사용 됩니다.If you do not specify an encoding type, UTF-8 is used.

중요

이 형식이 구현 하는 IDisposable 인터페이스입니다.This type implements the IDisposable interface. 형식을 사용 하 여 마쳤으면 직접 또는 간접적으로의 삭제 해야 있습니다.When you have finished using the type, you should dispose of it either directly or indirectly. 직접 형식의 dispose 호출 해당 Dispose 의 메서드를 try / catch 블록입니다.To dispose of the type directly, call its Dispose method in a try/catch block. 삭제 하지 직접, 언어 구문 같은 사용 using (C#에서) 또는 Using (Visual Basic에서는).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). 자세한 내용은 "를 사용 하는 개체는 구현 IDisposable" 섹션을 참조 하세요.를 IDisposable 인터페이스 항목입니다.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

파생된 클래스는 고유한 문자 인코딩을 지정 하려면이 클래스의 메서드를 재정의할 수 있습니다.A derived class can override the methods of this class to give unique character encodings.

생성자

BinaryWriter() BinaryWriter() BinaryWriter() BinaryWriter()

스트림에 쓰는 BinaryWriter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the BinaryWriter class that writes to a stream.

BinaryWriter(Stream) BinaryWriter(Stream) BinaryWriter(Stream) BinaryWriter(Stream)

지정된 스트림을 기반으로 UTF-8 인코딩을 사용하여 BinaryWriter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the BinaryWriter class based on the specified stream and using UTF-8 encoding.

BinaryWriter(Stream, Encoding) BinaryWriter(Stream, Encoding) BinaryWriter(Stream, Encoding) BinaryWriter(Stream, Encoding)

지정된 스트림과 문자 인코딩을 기반으로 BinaryWriter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the BinaryWriter class based on the specified stream and character encoding.

BinaryWriter(Stream, Encoding, Boolean) BinaryWriter(Stream, Encoding, Boolean) BinaryWriter(Stream, Encoding, Boolean) BinaryWriter(Stream, Encoding, Boolean)

지정된 스트림과 문자 인코딩을 기반으로 하는 BinaryWriter 클래스의 새 인스턴스를 초기화하고 스트림을 선택적으로 연 상태로 둡니다.Initializes a new instance of the BinaryWriter class based on the specified stream and character encoding, and optionally leaves the stream open.

필드

Null Null Null Null

백업 저장소가 없는 BinaryWriter를 지정합니다.Specifies a BinaryWriter with no backing store.

OutStream OutStream OutStream OutStream

내부 스트림을 보유합니다.Holds the underlying stream.

속성

BaseStream BaseStream BaseStream BaseStream

BinaryWriter의 내부 스트림을 가져옵니다.Gets the underlying stream of the BinaryWriter.

메서드

Close() Close() Close() Close()

현재 BinaryWriter 및 기본 스트림을 닫습니다.Closes the current BinaryWriter and the underlying stream.

Dispose() Dispose() Dispose() Dispose()

BinaryWriter 클래스의 현재 인스턴스에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the current instance of the BinaryWriter class.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

BinaryWriter에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.Releases the unmanaged resources used by the BinaryWriter and optionally releases the managed resources.

DisposeAsync() DisposeAsync() DisposeAsync() DisposeAsync()

BinaryWriter 클래스의 현재 인스턴스에서 사용하는 모든 리소스를 비동기식으로 해제합니다.Asynchronously releases all resources used by the current instance of the BinaryWriter class.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Flush() Flush() Flush() Flush()

현재 작성기에 대한 모든 버퍼를 지우면 버퍼링된 모든 데이터를 내부 디바이스에 씁니다.Clears all buffers for the current writer and causes any buffered data to be written to the underlying device.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
Seek(Int32, SeekOrigin) Seek(Int32, SeekOrigin) Seek(Int32, SeekOrigin) Seek(Int32, SeekOrigin)

현재 스트림 내에서 위치를 설정합니다.Sets the position within the current stream.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)
Write(Boolean) Write(Boolean) Write(Boolean) Write(Boolean)

Boolean를 나타내는 0과 false를 나타내는 1을 사용하여 1바이트 true 값을 현재 스트림에 씁니다.Writes a one-byte Boolean value to the current stream, with 0 representing false and 1 representing true.

Write(Byte) Write(Byte) Write(Byte) Write(Byte)

부호 없는 바이트를 현재 스트림에 쓰고 스트림 위치를 1바이트씩 앞으로 이동합니다.Writes an unsigned byte to the current stream and advances the stream position by one byte.

Write(Byte[]) Write(Byte[]) Write(Byte[]) Write(Byte[])

내부 스트림에 바이트 배열을 씁니다.Writes a byte array to the underlying stream.

Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

현재 스트림에 바이트 배열 영역을 씁니다.Writes a region of a byte array to the current stream.

Write(Char) Write(Char) Write(Char) Write(Char)

유니코드 문자를 현재 스트림에 쓴 다음 사용된 Encoding과 스트림에 쓰여지는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Writes a Unicode character to the current stream and advances the current position of the stream in accordance with the Encoding used and the specific characters being written to the stream.

Write(Char[]) Write(Char[]) Write(Char[]) Write(Char[])

문자 배열을 현재 스트림에 쓴 다음 사용된 Encoding과 스트림에 쓰여지는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Writes a character array to the current stream and advances the current position of the stream in accordance with the Encoding used and the specific characters being written to the stream.

Write(Char[], Int32, Int32) Write(Char[], Int32, Int32) Write(Char[], Int32, Int32) Write(Char[], Int32, Int32)

문자 배열 섹션을 현재 스트림에 쓴 다음 사용된 Encoding과 스트림에 쓰여지는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Writes a section of a character array to the current stream, and advances the current position of the stream in accordance with the Encoding used and perhaps the specific characters being written to the stream.

Write(Decimal) Write(Decimal) Write(Decimal) Write(Decimal)

10진 값을 현재 스트림에 쓰고 스트림 위치를 16바이트씩 앞으로 이동합니다.Writes a decimal value to the current stream and advances the stream position by sixteen bytes.

Write(Double) Write(Double) Write(Double) Write(Double)

8바이트 부동 소수점 값을 현재 스트림에 쓰고 스트림 위치를 8바이트씩 앞으로 이동합니다.Writes an eight-byte floating-point value to the current stream and advances the stream position by eight bytes.

Write(Int16) Write(Int16) Write(Int16) Write(Int16)

2바이트 부호 있는 정수를 현재 스트림에 쓰고 스트림 위치를 2바이트씩 앞으로 이동합니다.Writes a two-byte signed integer to the current stream and advances the stream position by two bytes.

Write(Int32) Write(Int32) Write(Int32) Write(Int32)

4바이트 부호 있는 정수를 현재 스트림에 쓰고 스트림 위치를 4바이트씩 앞으로 이동합니다.Writes a four-byte signed integer to the current stream and advances the stream position by four bytes.

Write(Int64) Write(Int64) Write(Int64) Write(Int64)

8바이트 부호 있는 정수를 현재 스트림에 쓰고 스트림 위치를 8바이트씩 앞으로 이동합니다.Writes an eight-byte signed integer to the current stream and advances the stream position by eight bytes.

Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>)

현재 스트림에 바이트 범위를 씁니다.Writes a span of bytes to the current stream.

Write(ReadOnlySpan<Char>) Write(ReadOnlySpan<Char>) Write(ReadOnlySpan<Char>) Write(ReadOnlySpan<Char>)

문자 범위를 현재 스트림에 쓴 다음 사용된 Encoding과 스트림에 쓰여지는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Writes a span of characters to the current stream, and advances the current position of the stream in accordance with the Encoding used and perhaps the specific characters being written to the stream.

Write(SByte) Write(SByte) Write(SByte) Write(SByte)

부호 있는 바이트를 현재 스트림에 쓰고 스트림 위치를 1바이트씩 앞으로 이동합니다.Writes a signed byte to the current stream and advances the stream position by one byte.

Write(Single) Write(Single) Write(Single) Write(Single)

4바이트 부동 소수점 값을 현재 스트림에 쓰고 스트림 위치를 4바이트씩 앞으로 이동합니다.Writes a four-byte floating-point value to the current stream and advances the stream position by four bytes.

Write(String) Write(String) Write(String) Write(String)

BinaryWriter의 현재 인코딩으로 된 이 스트림에 문자열의 길이가 맨 앞에 나오는 문자열을 쓴 다음 사용된 인코딩과 스트림에 쓰여지는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Writes a length-prefixed string to this stream in the current encoding of the BinaryWriter, and advances the current position of the stream in accordance with the encoding used and the specific characters being written to the stream.

Write(UInt16) Write(UInt16) Write(UInt16) Write(UInt16)

2바이트 부호 없는 정수를 현재 스트림에 쓰고 스트림 위치를 2바이트씩 앞으로 이동합니다.Writes a two-byte unsigned integer to the current stream and advances the stream position by two bytes.

Write(UInt32) Write(UInt32) Write(UInt32) Write(UInt32)

4바이트 부호 없는 정수를 현재 스트림에 쓰고 스트림 위치를 4바이트씩 앞으로 이동합니다.Writes a four-byte unsigned integer to the current stream and advances the stream position by four bytes.

Write(UInt64) Write(UInt64) Write(UInt64) Write(UInt64)

8바이트 부호 없는 정수를 현재 스트림에 쓰고 스트림 위치를 8바이트씩 앞으로 이동합니다.Writes an eight-byte unsigned integer to the current stream and advances the stream position by eight bytes.

Write7BitEncodedInt(Int32) Write7BitEncodedInt(Int32) Write7BitEncodedInt(Int32) Write7BitEncodedInt(Int32)

압축 형식의 32비트 정수를 씁니다.Writes a 32-bit integer in a compressed format.

명시적 인터페이스 구현

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

BinaryWriter에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.Releases the unmanaged resources used by the BinaryWriter and optionally releases the managed resources.

적용 대상

추가 정보