Condividi tramite


Conversioni tra stringhe e altri tipi (Visual Basic)

È possibile convertire un valore numerico, Boolean, o di data/ora in un oggetto String. È anche possibile convertire nella direzione inversa , da un valore stringa a numerico, Booleano Date , a condizione che il contenuto della stringa possa essere interpretato come un valore valido del tipo di dati di destinazione. Se non è possibile, si verifica un errore di run-time.

Le conversioni per tutte queste assegnazioni, in entrambe le direzioni, sono conversioni di restringimento. È consigliabile usare le parole chiave di conversione dei tipi (CBool, CByte, CDate, CDbl, CDec, CInt, CLng, CSByte, CShort, CSng, CStr, CUInt, CULng, CUShort e CType). Le Format funzioni e Val offrono un controllo aggiuntivo sulle conversioni tra stringhe e numeri.

Se è stata definita una classe o una struttura, è possibile definire operatori di conversione dei tipi tra String e il tipo della classe o della struttura. Per altre informazioni, vedere Procedura: Definire un operatore di conversione.

Conversione di numeri in stringhe

È possibile usare la Format funzione per convertire un numero in una stringa formattata, che può includere non solo le cifre appropriate, ma anche i simboli di formattazione, ad esempio un segno di valuta ( ad esempio $), migliaia di separatori o simboli di raggruppamento di cifre (ad esempio ,) e un separatore decimale (ad esempio .). Format utilizza automaticamente i simboli appropriati in base alle impostazioni opzioni internazionali specificate nel Pannello di controllo di Windows.

Si noti che l'operatore di concatenazione (&) può convertire un numero in una stringa in modo implicito, come illustrato nell'esempio seguente.

' The following statement converts count to a String value.  
Str = "The total count is " & count  

Conversione di stringhe in numeri

È possibile usare la Val funzione per convertire in modo esplicito le cifre in una stringa in un numero. Val legge la stringa fino a quando non rileva un carattere diverso da una cifra, uno spazio, una scheda, un feed di riga o un punto. Le sequenze "&O" e "&H" modificano la base del sistema numerico e terminano l'analisi. Fino a quando non smette di leggere, Val converte tutti i caratteri appropriati in un valore numerico. Ad esempio, l'istruzione seguente restituisce il valore 141.825.

Val(" 14 1.825 miles")

Quando Visual Basic converte una stringa in un valore numerico, usa le impostazioni Opzioni internazionali specificate nel Pannello di controllo di Windows per interpretare il separatore delle migliaia, il separatore decimale e il simbolo di valuta. Ciò significa che una conversione potrebbe avere esito positivo in un'impostazione, ma non in un'altra. Ad esempio, "$14.20" è accettabile nelle impostazioni locali inglese (Stati Uniti), ma non in nessuna lingua francese.

Vedere anche