Differenze tra le versioni di "Convertire i valori di tipo Byte di un vettore in valori di tipo Stringa"

Da Gambas-it.org - Wikipedia.
Riga 7: Riga 7:
  
 
Esempio:
 
Esempio:
  '''Public''' Sub Form_Open()
+
  '''Public''' Sub Main()
 
   
 
   
   Dim a As Byte[]
+
   Dim bb As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 +
  Dim s As String
 +
   
 +
    s = bb<FONT color=#B22222>.ToString</font>(0, bb.Count)  |[[#Note|1]]|
 +
 +
    Print s
 +
 +
'''End'''
 +
 
 +
 
 +
===Modalità alternativa a ''.ToString()'' dereferenziando la proprietà ''.Data''===
 +
Per ottenere i valori contenuti da una variabile vettoriale di tipo ''Byte[]'' in formato Stringa, si può dereferenziare il Puntatore restituito dalla proprietà ''.Data'' appartenente a tali variabili.
 +
 
 +
 
 +
Esempio:
 +
'''Public''' Sub Main()
 +
 +
  Dim bb As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 
   Dim s As String
 
   Dim s As String
 
    
 
    
 
+
      s = String@(bb.Data)
    a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
 
   
 
    s = a<FONT color=#B22222>.ToString</font>(0, a.count)   |[[#Note|1]]|
 
 
   
 
   
    File.Save("/tmp/as", s)
+
      Print s
 
   
 
   
 
  '''End'''
 
  '''End'''
Riga 26: Riga 40:
 
=Note=
 
=Note=
 
[1] Come è possibile notare, la funzione ''.ToString()'' agevola il compito che potrebbe essere effettuato con la funzione ''Chr()'' su ciascun elemento del vettore, usando, però, un ciclo:
 
[1] Come è possibile notare, la funzione ''.ToString()'' agevola il compito che potrebbe essere effettuato con la funzione ''Chr()'' su ciascun elemento del vettore, usando, però, un ciclo:
   '''Public''' Sub Form_Open()
+
   '''Public''' Sub Main()
 
   
 
   
   Dim vettore As Byte[]
+
   Dim vettore As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 
   Dim s As String
 
   Dim s As String
 
   Dim i As Integer
 
   Dim i As Integer
 
    
 
    
 
 
  vettore = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
 
 
 
 
   For i = 0 To vettore.Max
 
   For i = 0 To vettore.Max
 
     s &= Chr(vettore[i])
 
     s &= Chr(vettore[i])
 
   Next
 
   Next
 
   
 
   
   File.Save("/tmp/as", s)
+
   Print s
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 03:35, 13 feb 2015

Gambas, per convertire i valori di tipo Byte contenuti in una variabile vettoriale (array) in valori di tipo Stringa, mette a disposizione il metodo .ToString().

La sua sintassi è:

ToString( [ Inizio As Integer, Lunghezza As Integer ] ) As String

laddove Inizio è l'indice del primo byte da cui cominciare la conversione. Esso è di default uguale a zero. Lunghezza è il numero di byte da convertire. Di default è fino all'ultimo byte del vettore.


Esempio:

Public Sub Main()

 Dim bb As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 Dim s As String
   
   s = bb.ToString(0, bb.Count)   |1|

   Print s

End


Modalità alternativa a .ToString() dereferenziando la proprietà .Data

Per ottenere i valori contenuti da una variabile vettoriale di tipo Byte[] in formato Stringa, si può dereferenziare il Puntatore restituito dalla proprietà .Data appartenente a tali variabili.


Esempio:

Public Sub Main()

 Dim bb As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 Dim s As String
 
     s = String@(bb.Data)

     Print s

End



Note

[1] Come è possibile notare, la funzione .ToString() agevola il compito che potrebbe essere effettuato con la funzione Chr() su ciascun elemento del vettore, usando, però, un ciclo:

 Public Sub Main()

 Dim vettore As Byte[] = [97, 98, 99, 10, 100, 101, 102]
 Dim s As String
 Dim i As Integer
 
  For i = 0 To vettore.Max
    s &= Chr(vettore[i])
  Next

  Print s

End