Поделиться через


BinaryReader Конструкторы

Определение

Инициализирует новый экземпляр класса BinaryReader.

Перегрузки

BinaryReader(Stream)

Инициализирует новый экземпляр класса BinaryReader на основании указанного потока с использованием кодировки UTF-8.

BinaryReader(Stream, Encoding)

Инициализирует новый экземпляр класса BinaryReader на основе указанного потока и кодировки символов.

BinaryReader(Stream, Encoding, Boolean)

Инициализирует новый экземпляр класса BinaryReader на основании указанного потока и кодировки символов, а также при необходимости оставляет поток открытым.

BinaryReader(Stream)

Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs

Инициализирует новый экземпляр класса BinaryReader на основании указанного потока с использованием кодировки UTF-8.

public:
 BinaryReader(System::IO::Stream ^ input);
public BinaryReader (System.IO.Stream input);
new System.IO.BinaryReader : System.IO.Stream -> System.IO.BinaryReader
Public Sub New (input As Stream)

Параметры

input
Stream

Входной поток.

Исключения

Поток не поддерживает чтение, имеет значение null или уже закрыт.

Примеры

В следующем примере кода показано, как сохранять и извлекать параметры приложения в файле.

using System;
using System.IO;
using System.Text;

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

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

    public static void WriteDefaultValues()
    {
        using (var stream = File.Open(fileName, FileMode.Create))
        {
            using (var writer = new BinaryWriter(stream, Encoding.UTF8, false))
            {
                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 (var stream = File.Open(fileName, FileMode.Open))
            {
                using (var reader = new BinaryReader(stream, Encoding.UTF8, false))
                {
                    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);
        }
    }
}
open System.IO
open System.Text

let fileName = "AppSettings.dat"

let writeDefaultValues () =
    use stream = File.Open(fileName, FileMode.Create)
    use writer = new BinaryWriter(stream, Encoding.UTF8, false)
    writer.Write 1.250F
    writer.Write @"c:\Temp"
    writer.Write 10
    writer.Write true

let displayValues () =
    if File.Exists fileName then
        use stream = File.Open(fileName, FileMode.Open)
        use reader = new BinaryReader(stream, Encoding.UTF8, false)
        let aspectRatio = reader.ReadSingle()
        let tempDirectory = reader.ReadString()
        let autoSaveTime = reader.ReadInt32()
        let showStatusBar = reader.ReadBoolean()

        printfn $"Aspect ratio set to: {aspectRatio}"
        printfn $"Temp directory is: {tempDirectory}"
        printfn $"Auto save time set to: {autoSaveTime}"
        printfn $"Show status bar: {showStatusBar}"

writeDefaultValues ()
displayValues ()
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(Stream, Encoding)

Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs

Инициализирует новый экземпляр класса BinaryReader на основе указанного потока и кодировки символов.

public:
 BinaryReader(System::IO::Stream ^ input, System::Text::Encoding ^ encoding);
public BinaryReader (System.IO.Stream input, System.Text.Encoding encoding);
new System.IO.BinaryReader : System.IO.Stream * System.Text.Encoding -> System.IO.BinaryReader
Public Sub New (input As Stream, encoding As Encoding)

Параметры

input
Stream

Входной поток.

encoding
Encoding

Кодировка символов, которую нужно использовать.

Исключения

Поток не поддерживает чтение, имеет значение null или уже закрыт.

encoding имеет значение null.

Комментарии

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

BinaryReader(Stream, Encoding, Boolean)

Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs
Исходный код:
BinaryReader.cs

Инициализирует новый экземпляр класса BinaryReader на основании указанного потока и кодировки символов, а также при необходимости оставляет поток открытым.

public:
 BinaryReader(System::IO::Stream ^ input, System::Text::Encoding ^ encoding, bool leaveOpen);
public BinaryReader (System.IO.Stream input, System.Text.Encoding encoding, bool leaveOpen);
new System.IO.BinaryReader : System.IO.Stream * System.Text.Encoding * bool -> System.IO.BinaryReader
Public Sub New (input As Stream, encoding As Encoding, leaveOpen As Boolean)

Параметры

input
Stream

Входной поток.

encoding
Encoding

Кодировка символов, которую нужно использовать.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта BinaryReader; в противном случае — значение false.

Исключения

Поток не поддерживает чтение, имеет значение null или уже закрыт.

Параметр encoding или input имеет значение null.

См. также раздел

Применяется к