L'auteur
Francis Faure France Membre Actif (personne physique) # 0000000001 enregistré le 11/10/2004
http://www.wanagain.net 56 ans Faure Francis de la société Design Or Decline Fiche personnelle
Note des membres
pas de note
|
Contributions > 01 - PRG : Programmation > Conversions
Convertir win-1252 en ISO-8859-1
# 0000000746
ajouté le 29/03/2010 17:20:28 et modifié le 29/03/2010
consulté 9561 fois
Niveau
débutant
|
Description |
Pour Jean :
Suite à sa demande en news de convertir en ISO-8859-1
Cordialement
Francis
ps : Grégory nous ferait surement une regex en 2 lignes pour la même chose ^^ |
Code source : |
lsChaine = ""
FOR liI=0x80 TO 0x9F
lschaine = m.lschaine + CHR(m.liI)
next
lsChaine = "Chaine en windows 1252 à convertir en ISO-8859-1 : " + m.lsChaine
? m.lsChaine font "Arial", 16
? STRCONV_win_1252_to_ISO_8859_1(m.lsChaine) font "Arial", 16
* http://fr.wikipedia.org/wiki/Windows-1252
FUNCTION STRCONV_win_1252_to_ISO_8859_1(lschaine)
LOCAL liI as Integer
FOR liI=0x80 TO 0x9F
DO case
CASE m.liI == 0x80
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [euro]) && symbole €uro
CASE m.liI == 0x82
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [,]) && quote basse : ressemble a une virgule
CASE m.liI == 0x83
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [f]) && ressemble a un f
CASE m.liI == 0x84 OR m.liI == 0x93 OR m.liI == 0x94
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), ["]) && guillement bas
CASE m.liI == 0x85
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [...]) && 3 points dans le même caractère
CASE m.liI == 0x88
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [^])
CASE m.liI == 0x89
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [o/oo]) && pour mille
CASE m.liI == 0x8A
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [S])
CASE m.liI == 0x8B
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [<])
CASE m.liI == 0x8C
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [OE])
CASE m.liI == 0x8E
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [Z])
CASE m.liI == 0x91 OR m.liI == 0x92
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), ['])
CASE m.liI == 0x95
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [.])
CASE m.liI == 0x96
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [-])
CASE m.liI == 0x97
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [--])
CASE m.liI == 0x98
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [~])
CASE m.liI == 0x99
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [tm])
CASE m.liI == 0x9A
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [s])
CASE m.liI == 0x9B
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [>])
CASE m.liI == 0x9C
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [oe])
CASE m.liI == 0x9E
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [z])
CASE m.liI == 0x9F
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [Y])
otherwise
lsChaine = STRTRAN(m.lschaine, CHR(m.liI), [ ])
endcase
NEXT
RETURN m.lschaine
|
Commentaires |
|
Merci !
Jean à Grenoble