BinaryReader 클래스

정의

기본 데이터 형식을 특정 인코딩의 이진 값으로 읽습니다.Reads primitive data types as binary values in a specific encoding.

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

예제

다음 코드 예제에는 저장 하 고 파일에서 애플리케이션 설정을 검색 하는 방법을 보여 줍니다.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

설명

BinaryReader 클래스는 기본 데이터 형식을 스트림에서 읽기를 간소화 하는 방법을 제공 합니다.The BinaryReader class provides methods that simplify reading primitive data types from a stream. 예를 들어 사용할 수 있습니다는 ReadBoolean 부울 값으로 다음 바이트를 읽고 스트림의 현재 위치를 1 바이트씩 진행 방법입니다.For example, you can use the ReadBoolean method to read the next byte as a Boolean value and advance the current position in the stream by one byte. 클래스는 다른 데이터 형식을 지 원하는 읽기 메서드를 포함 합니다.The class includes read methods that support different data types.

새 인스턴스를 만들 때 합니다 BinaryReader 클래스에서 읽을 스트림을 제공 하 고 필요에 따라 인코딩 유형을 지정 연을 스트림에 열어둘 지를 삭제 한 후를 BinaryReader 개체입니다.When you create a new instance of the BinaryReader class, you provide the stream to read from, and optionally specify the type of encoding and whether to leave the stream open after disposing the BinaryReader 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.

생성자

BinaryReader(Stream)

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

BinaryReader(Stream, Encoding)

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

BinaryReader(Stream, Encoding, Boolean)

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

속성

BaseStream

BinaryReader의 내부 스트림에 대한 액세스를 노출합니다.Exposes access to the underlying stream of the BinaryReader.

메서드

Close()

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

Dispose()

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

Dispose(Boolean)

BinaryReader 클래스에 사용되는 관리되지 않는 리소스를 해제하고, 필요에 따라 관리되는 리소스를 해제합니다.Releases the unmanaged resources used by the BinaryReader class and optionally releases the managed resources.

Equals(Object)

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

(다음에서 상속됨 Object)
FillBuffer(Int32)

스트림에서 읽은 지정된 바이트 수로 내부 버퍼를 채웁니다.Fills the internal buffer with the specified number of bytes read from the stream.

GetHashCode()

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

(다음에서 상속됨 Object)
GetType()

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

(다음에서 상속됨 Object)
MemberwiseClone()

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

(다음에서 상속됨 Object)
PeekChar()

사용할 수 있는 다음 문자를 반환하고 바이트 또는 문자 위치를 앞으로 이동하지 않습니다.Returns the next available character and does not advance the byte or character position.

Read()

내부 스트림에서 문자를 읽고 사용된 Encoding과 스트림에서 읽어오는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Reads characters from the underlying stream and advances the current position of the stream in accordance with the Encoding used and the specific character being read from the stream.

Read(Byte[], Int32, Int32)

바이트 배열의 지정된 지점부터 스트림에서 지정된 바이트 수만큼 읽습니다.Reads the specified number of bytes from the stream, starting from a specified point in the byte array.

Read(Char[], Int32, Int32)

문자 배열의 지정된 지점부터 스트림에서 지정된 문자 수만큼 읽습니다.Reads the specified number of characters from the stream, starting from a specified point in the character array.

Read(Span<Byte>)

현재 스트림에서 바이트 시퀀스를 읽고 읽은 바이트 수만큼 스트림에서 위치를 앞으로 이동합니다.Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

Read(Span<Char>)

현재 스트림에서 제공된 버퍼의 길이와 동일한 문자 수만큼 읽어 제공된 버퍼에 쓰고 사용된 Encoding과 스트림에서 읽어 오는 특정 문자의 길이만큼 현재 위치를 앞으로 이동합니다.Reads, from the current stream, the same number of characters as the length of the provided buffer, writes them in the provided buffer, and advances the current position in accordance with the Encoding used and the specific character being read from the stream.

Read7BitEncodedInt()

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

ReadBoolean()

현재 스트림에서 Boolean 값을 읽고 스트림의 현재 위치를 1바이트 앞으로 이동합니다.Reads a Boolean value from the current stream and advances the current position of the stream by one byte.

ReadByte()

현재 스트림에서 다음 바이트를 읽고 스트림의 현재 위치를 1바이트 앞으로 이동합니다.Reads the next byte from the current stream and advances the current position of the stream by one byte.

ReadBytes(Int32)

현재 스트림에서 지정된 바이트 수만큼 바이트 배열로 읽어 오고 현재 위치를 해당 바이트 수만큼 앞으로 이동합니다.Reads the specified number of bytes from the current stream into a byte array and advances the current position by that number of bytes.

ReadChar()

현재 스트림에서 다음 문자를 읽고 사용된 Encoding과 스트림에서 읽어오는 특정 문자의 길이만큼 스트림의 현재 위치를 앞으로 이동합니다.Reads the next character from the current stream and advances the current position of the stream in accordance with the Encoding used and the specific character being read from the stream.

ReadChars(Int32)

현재 스트림에서 지정된 문자 수만큼 읽어 문자 배열로 데이터를 반환하고, 사용된 Encoding과 스트림에서 읽어 오는 특정 문자의 길이만큼 현재 위치를 앞으로 이동합니다.Reads the specified number of characters from the current stream, returns the data in a character array, and advances the current position in accordance with the Encoding used and the specific character being read from the stream.

ReadDecimal()

현재 스트림에서 10진 값을 읽고 스트림의 현재 위치를 16바이트 앞으로 이동합니다.Reads a decimal value from the current stream and advances the current position of the stream by sixteen bytes.

ReadDouble()

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

ReadInt16()

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

ReadInt32()

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

ReadInt64()

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

ReadSByte()

현재 스트림에서 부호 있는 바이트를 읽고 스트림의 현재 위치를 1바이트 앞으로 이동합니다.Reads a signed byte from this stream and advances the current position of the stream by one byte.

ReadSingle()

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

ReadString()

현재 스트림에서 문자열을 읽습니다.Reads a string from the current stream. 한 번에 7비트 정수로 인코드된 길이는 해당 문자열의 접두사로 붙습니다.The string is prefixed with the length, encoded as an integer seven bits at a time.

ReadUInt16()

little-endian 인코딩을 사용하여 현재 스트림에서 부호 없는 2바이트 정수를 읽고 스트림의 위치를 2바이트 앞으로 이동합니다.Reads a 2-byte unsigned integer from the current stream using little-endian encoding and advances the position of the stream by two bytes.

ReadUInt32()

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

ReadUInt64()

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

ToString()

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

(다음에서 상속됨 Object)

명시적 인터페이스 구현

IDisposable.Dispose()

BinaryReader에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the BinaryReader.

적용 대상

추가 정보