Condividi tramite


Creazione di un writer

Nell'esempio di codice che segue viene creato un writer, ovvero una classe in grado di prendere dati di un certo tipo e convertirli in una matrice di byte che può essere passata a un flusso.

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();
    }
};

In questo esempio viene creata una classe il cui costruttore accetta un argomento che identifica un flusso. Da qui è possibile esporre ogni metodo Write necessario. È necessario convertire tutto ciò che si scrive in una matrice di byte. Una volta ottenuta la matrice di byte, il metodo Write la scrive nel flusso s.

Vedere anche

Concetti

I/O di file di base

Composizione dei flussi