Differenze tra le versioni di "Convertire un numero in un carattere ASCII"
Riga 41: | Riga 41: | ||
=Conversione di due valori, costituenti un carattere speciale, nella sua rappresentazione grafica= | =Conversione di due valori, costituenti un carattere speciale, nella sua rappresentazione grafica= | ||
− | Come è noto i caratteri alfabetici speciali (ad esempio le lettere accentate "à", "è", "é", etc...) sono composte non da un solo valore della tabella ASCII (come è per le lettere fondamentali dell'alfabeto), bensì da due valori. | + | Come è noto i caratteri alfabetici speciali (ad esempio le lettere accentate "à", "è", "é", etc...), chiamati anche "''lettere localizzate''", sono composte non da un solo valore della tabella ASCII (come è per le lettere fondamentali dell'alfabeto), bensì da due valori. <SUP>[[[#Note|Nota 1]]]</sup> |
<BR>Ad esempio il carattere della "a" accentata: '''à''', è costituito dai valori &C3 e &A0. | <BR>Ad esempio il carattere della "a" accentata: '''à''', è costituito dai valori &C3 e &A0. | ||
Riga 52: | Riga 52: | ||
'''End''' | '''End''' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | =Nota= | ||
+ | [1] Al riguardo vedi anche la seguente pagina della Wiki: http://www.gambas-it.org/wiki/index.php?title=Individuare_i_valori_costituenti_i_caratteri_tipo_UTF-8_di_lettere_localizzate |
Versione delle 16:27, 20 gen 2017
Come è noto il codice ASCII è uno standard consistente in 128 numeri decimali da 0 a 127, ai quali si aggiungono i numeri da 128 a 255 comprendenti caratteri speciali. Pertanto ogni numero nel codice ASCII corrisponde ad un carattere di quel protocollo.
In Gambas è possibile ottenere da un numero il corrispondente carattere ASCII mediante almeno tre modalità, esposte di seguito.
Indice
Uso della funzione Chr()
E' possibile utilizzare la funzione Chr():
Public Sub Main() Dim carattere As String carattere = Chr(99) Print carattere End
Uso del metodo .ToString() dei vettori di tipo Byte()
E' possibile utilizzare il metodo .ToString() dei vettori di tipo Byte():
Public Sub Main() Dim bb As Byte[] = [99, 100] Print bb.ToString(0, 2) End
Uso dei caratteri \x
E' possibile utilizzare la stringa formata dal carattere escape \x anteposto al numero esadecimale del codice ASCII da convertire:
Public Sub Main() Print "\x63" End
Conversione di due valori, costituenti un carattere speciale, nella sua rappresentazione grafica
Come è noto i caratteri alfabetici speciali (ad esempio le lettere accentate "à", "è", "é", etc...), chiamati anche "lettere localizzate", sono composte non da un solo valore della tabella ASCII (come è per le lettere fondamentali dell'alfabeto), bensì da due valori. [Nota 1]
Ad esempio il carattere della "a" accentata: à, è costituito dai valori &C3 e &A0.
Pertanto, avendo tali due valori, è possibile ricostruire la corrispondente rappresentazione grafica del carattere speciale mediante la funzione nativa di Gambas Chr( ).
In questo esempio pratico vediamo otterremo la rappresentzione grafica della lettera "à":
Public Sub Main() Print Chr(&C3) & Chr(&A0) End
Nota
[1] Al riguardo vedi anche la seguente pagina della Wiki: http://www.gambas-it.org/wiki/index.php?title=Individuare_i_valori_costituenti_i_caratteri_tipo_UTF-8_di_lettere_localizzate