JavascriptProva

domenica 19 agosto 2012

Creare un file con VB.NET

Creare un file con un'estensione qualunque, e salvarlo in desktop

Si dichiara una variabile come FileStream.
Imports System.IO
Imports System.Text
Public Class Form1
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim fs As FileStream

    End Sub

End Class
Si dichiara una matrice di Bytes:
Imports System.IO
Imports System.Text
Public Class Form1
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim fs As FileStream
        Dim dati() As Byte

    End Sub

End Class
In questa matrice si raccolgono i bytes corrispondenti a una stringa, o a qualunque altra cosa:
Imports System.IO
Imports System.Text
Public Class Form1
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim fs As FileStream
        Dim dati() As Byte
        dati = Encoding.ASCII.GetBytes("Questa è una stringa")

    End Sub

End Class
Si inizializza la variabile di tipo FileStream, con il nome del file e la parola FileMode, che dovrebbe essere la modalità di scrittura, che vedrò in seguito
Imports System.IO
Imports System.Text
Public Class Form1
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim fs As FileStream
        Dim dati() As Byte
        dati = Encoding.ASCII.GetBytes("Questa è una stringa")
        fs = New FileStream("C:\users\antonello\desktop\NomeDelFile.jac", FileMode.Append)
    End Sub

End Class
Si scrive sul file. con il metodo Write dell'oggetto FileStream, specificando la matrice da cui attingere i dati, l'offset e la quantità di bytes da scrivere.
Quindi si chiude il FileStream
Imports System.IO
Imports System.Text
Public Class Form1
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim fs As FileStream
        Dim dati() As Byte
        dati = Encoding.ASCII.GetBytes("Questa è una stringa")
        fs = New FileStream("C:\users\antonello\desktop\NomeDelFile.jac", FileMode.Append)
        fs.Write(dati, 0, dati.Length)
        fs.Close()
    End Sub

End Class


Facciamo partire il codice e vediamo se funziona.

Funziona! Ho in desktop un nuovo file chiamato NomeDelFile.jac.
L'unica cosa strana è che nel testo non mi ha riconosciuto la "è" e me l'ha sostituita con un punto interrogativo. Credo che sia un problema relativo a Encoding, da affrontare successivamente.

Nessun commento:

Posta un commento