Compartilhar via


Criando um gravador

O exemplo de código a seguir cria um gravador, que é uma classe que pode levar dados de algum tipo e convertê-los em um matriz de bytes que pode ser passada para um fluxo.

Imports System
Imports System.IO

Public Class MyWriter
    Private s As Stream

    Public Sub New(stream As Stream)
        s = stream
    End Sub

    Public Sub WriteDouble(myData As Double)
        Dim b() As Byte = BitConverter.GetBytes(myData)
        ' GetBytes is a binary representation of a double data type.
        s.Write(b, 0, b.Length)
    End Sub

    Public Sub Close()
        s.Close()
    End Sub
End Class
using System;
using System.IO;

public class MyWriter
{
    private Stream s;

    public MyWriter(Stream stream)
    {
        s = stream;
    }

    public void WriteDouble(double myData)
    {
        byte[] b = BitConverter.GetBytes(myData);
        // GetBytes is a binary representation of a double data type.
        s.Write(b, 0, b.Length);
    }

    public void Close()
    {
        s.Close();
    }
}
using namespace System;
using namespace System::IO;

public ref class MyWriter
{
private:
    Stream^ s;

public:
    MyWriter(Stream^ stream)
    {
        s = stream;
    }

    void WriteDouble(double myData)
    {
        array<Byte>^ b = BitConverter::GetBytes(myData);
        // GetBytes is a binary representation of a double data type.
        s->Write(b, 0, b->Length);
    }

    void Close()
    {
        s->Close();
    }
};

Nesse exemplo, você cria uma classe que possui um construtor com argumento de fluxo. A partir daqui, você pode expor quaisquer métodos Write que sejam necessários. Você deve converter tudo o que você está escrevendo para um byte[]. Depois de obter o byte [], o método Write o grava no fluxo s .

Consulte também

Conceitos

Arquivo básico de E/S

Compondo fluxos