Convertire un codice Unicode in carattere UTF-8 con la funzione g unichar to utf8() della libreria libglib-2.0

Da Gambas-it.org - Wikipedia.

La funzione esterna "g_unichar_to_utf8()" della libreria libglib-2.0 converte il codice Unicode in un carattere UTF-8.

E' necessario richiamare in Gambas la libreria condivisa: "libglib-2.0.so.0.7200.4 ".

Mostriamo un esempio pratico:

Library "libglib-2.0:0.7200.4"

' gint g_unichar_to_utf8 (gunichar c, gchar *outbuf)
' Converts a single character to UTF-8.
Private Extern g_unichar_to_utf8(c As Integer, outbuf As Pointer) As Integer


Public Sub Main()
 
 Dim unicode, lun As Integer
 Dim p As Pointer

' Impostiamo il codice Unicode da convertire in UTF-8:
 unicode = &01D4
 
 p = Alloc(SizeOf(gb.Integer), 1)
 
 lun = g_unichar_to_utf8(unicode, p)
 
 Print "Unicode "; unicode; " =  "; Left(String@(p), lun)
 
' Dealloca l'area precedentemente riservata e si assicura che il Puntatore punti a un indirizzo non rilevante:
 Free(p)
 p = 0
  
End


Riferimenti