|
|
(5 versioni intermedie di uno stesso utente non sono mostrate) |
Riga 1: |
Riga 1: |
− | Scrivere una stringa in un vettore di tipo ''Byte[ ]'', significa memorizzare ciascun carattere della stringa, con il rispettivo valore ASCII, in un elemento della variabile vettoriale.
| + | #REDIRECT [[Ottenere un vettore di tipo Byte da una Stringa]] |
− | | |
− | Sono possibili almeno due possibilità:
| |
− | * con il metodo ''.FromString( )'' dei vettori di tipo ''Byte[ ]'';
| |
− | * con i ''Memory Stream'' e la proprietà ''.Data'' dei vettori di tipo ''Byte[ ]'' .
| |
− | | |
− | | |
− | ==Uso del metodo ''.FromString( )''==
| |
− | Gli array di tipo ''Byte[ ]'' dipongono di un apposito metodo per memorizzare i dati costituenti una stringa di caratteri, la cui sintassi è:
| |
− | .FromString( String As String ) As Byte[]
| |
− | | |
− | Di seguito mostriamo un semplice esempio:
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Dim bb As Byte[]
| |
− | Dim s As String
| |
− | Dim b As Byte
| |
− |
| |
− | s = "Testo qualsiasi"
| |
− |
| |
− | bb = Byte[].FromString(s)
| |
− |
| |
− | <FONT Color=gray>' ''Verifichiamo ora il contenuto del vettore "bb":''</font>
| |
− | For Each b In bb
| |
− | Print Hex(b); " = "; Chr(b)
| |
− | Next
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | | |
− | ==Uso dei ''Memory Stream'' con la proprietà ''.Data'' degli array==
| |
− | Le variabili vettoriali posseggono, fra le altre, anche la proprietà ''.Data'' che restituisce un ''Puntatore'' all'area di memoria dell'oggetto vettore contenente i dati.
| |
− | | |
− | E' possibile, dunque, utilizzare quel ''Puntatore'' per scrivere i dati di una stringa mediante i ''Memory Stream''. <SUP>[ [[#Note|Nota 1]] ]</sup>
| |
− | | |
− | | |
− | Mostriamo di seguito un semplice esempio:
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Dim bb As Byte[]
| |
− | Dim s As String
| |
− | Dim st As Stream
| |
− | Dim b As Byte
| |
− |
| |
− | s = "Testo qualsiasi"
| |
− |
| |
− | bb = New Byte[String.Len(s)]
| |
− |
| |
− | <FONT Color=gray>' ''Scriviamo la stringa nel vettore "bb":''</font>
| |
− | st = Memory bb.Data For Write
| |
− | Write #st, s
| |
− | st.Close
| |
− |
| |
− | <FONT Color=gray>' ''Verifichiamo ora il contenuto del vettore "bb":''</font>
| |
− | For Each b In bb
| |
− | Print Hex(b); " = "; Chr(b)
| |
− | Next
| |
− |
| |
− | <FONT Color=gray>' ''...o anche così, dereferenziando il "Puntatore":''</font>
| |
− | Print String@(bb.Data)
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | | |
− | | |
− | =Note=
| |
− | [1] Sulla scrittura (e lettura) dei dati di una variabile array, è possibile consultare anche [[Leggere_e_scrivere_in_un_vettore_mediante_i_Memory_Stream|seguente pagina della WIKI]].
| |