Il arrive souvent que dans les applications nous rencontrons un problème avec les différents jeux de caractères (ASCII, LATIN-1, UTF-8) ; il faut alors les convertir. [astuce]
Remarque : afin de gérer tous les caractères de toutes les langues, préférez l'encodage UTF-8.
$KCODE = 'U' #UTF-8 : s'assurer que le code de la page est en UTF-8
En Ruby vous pouvez trouver ceci pour résoudre votre problème : [iconv]
# attention destination, source Latin-1 => UTF-8
@c = Iconv.new('utf-8','iso-8859-1')
text = @c.iconv(mon_texte_a_encoder)
Iconv.new('iso-8859-15//IGNORE//TRANSLIT', 'utf-8').iconv(text)
Cette fonction comporte cependant quelques "Bugs" et vous devez gérer les cas particuliers des accents.
Il est donc préférable d'utiliser pack, unpack :
*/ unpack : créé un tableau avec le n° du caractère ascii (code ASCII)
C : 0 à 255
c : -128 à 127
*/ pack : ffff
U : UTF-8
Transformer un "string" iso-8859-1 en UTF-8 : string.unpack('C*').pack('U*')
Ruby Doc [arr.pack] - [str.unpack(format) => anArray]
Affichage des articles dont le libellé est jeux de caractères. Afficher tous les articles
Affichage des articles dont le libellé est jeux de caractères. Afficher tous les articles
vendredi 21 novembre 2008
Inscription à :
Articles (Atom)