Nix
Messages postés831Date d'inscriptionsamedi 15 mai 1999StatutMembreDernière intervention18 juillet 2009
-
30 mars 2007 à 20:13
cs_Keneyda
Messages postés41Date d'inscriptionlundi 30 décembre 2002StatutMembreDernière intervention27 mars 2009
-
27 mars 2009 à 14:56
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
pifou25
Messages postés144Date d'inscriptionlundi 13 octobre 2003StatutMembreDernière intervention21 décembre 2014 19 sept. 2007 à 16:46
Moi je suis bluffé par le temps qu'on perd à cause de ces betises de transcodifications incompréhensibles qui dérangent tout le monde!
Voila, le serveur tente de trouver automatiquement le charset, ensuite en ASP on peut le définir manuellement (response.charset) mais il faut aussi enregistrer le fichier au même format qu'on le définit (la plupart des éditeurs ont les options pour cela) et quoi qu'il en soit je tombe encore sur des cas ou ça fonctionne pas ou mal!
Me trouve obligé d'utiliser cette fonction (que je trouve digne de la préhistoire de l'informatique mais pourtant!) et ben, un grand merci à Phimselfbis, je note le code pour ton commentaire ^^
cs_EricDD
Messages postés16Date d'inscriptionvendredi 20 mai 2005StatutMembreDernière intervention 3 juillet 2008 27 juil. 2007 à 09:53
Merci phimselfbis,
Ta solution est beaucoup plus élégante.
Je suis impressionné par le nombre de personnes qui sont venus sur cette page depuis le mois de mars : 3312 fois à ce jour.
J'espère que cela aura été utile à beaucoup.
phimselfbis
Messages postés3Date d'inscriptionmardi 28 janvier 2003StatutMembreDernière intervention27 juillet 2007 27 juil. 2007 à 09:36
Merci,
j'ai repris tes valeurs car il m'en manquait quelques unes et je les ai ajoutées à mon code. J'utilise pour ma part 2 tableaux, comme çà, on peut changer dans les 2 sens.
texte = "mon texte"
temp = 0
For each NOMBRE in VALEURS1
texte = replace( texte, VALEURS1(temp), VALEURS2(temp) )
temp = temp+1
next
BSGilles
Messages postés12Date d'inscriptionsamedi 8 mars 2003StatutMembreDernière intervention18 août 2008 26 juin 2007 à 20:26
Evident, mais bien utile. Je cherchais à récupérer sous VB6 des fichiers textes enregistrés sous VB2005 (.net), où les pièges vicieux posés par les hommes de Bill sont légion. Merci pour la solution.
27 mars 2009 à 14:56
<%response.Charset="ISO-8859-1"%>
9 janv. 2008 à 10:08
Peut aller de pair avec la fonction javascript pour faire de l'Ajax :
pour encoder en UTF8 le contenu d'un textAREA par exemple et l'envoyer vers une page aspx en ajax.
<script>
function encode (string) {
string = string.replace(/\r\n/g,"\n");
var utftext = "";
for (var n = 0; n < string.length; n++) {
var c = string.charCodeAt(n);
if (c < 128) {
utftext += String.fromCharCode(c);
}
else if((c > 127) && (c < 2048)) {
utftext += String.fromCharCode((c >> 6) | 192);
utftext += String.fromCharCode((c & 63) | 128);
}
else {
utftext += String.fromCharCode((c >> 12) | 224);
utftext += String.fromCharCode(((c >> 6) & 63) | 128);
utftext += String.fromCharCode((c & 63) | 128);
}
}
return utftext;
}
</script>
19 sept. 2007 à 16:46
Voila, le serveur tente de trouver automatiquement le charset, ensuite en ASP on peut le définir manuellement (response.charset) mais il faut aussi enregistrer le fichier au même format qu'on le définit (la plupart des éditeurs ont les options pour cela) et quoi qu'il en soit je tombe encore sur des cas ou ça fonctionne pas ou mal!
Me trouve obligé d'utiliser cette fonction (que je trouve digne de la préhistoire de l'informatique mais pourtant!) et ben, un grand merci à Phimselfbis, je note le code pour ton commentaire ^^
27 juil. 2007 à 09:53
Ta solution est beaucoup plus élégante.
Je suis impressionné par le nombre de personnes qui sont venus sur cette page depuis le mois de mars : 3312 fois à ce jour.
J'espère que cela aura été utile à beaucoup.
27 juil. 2007 à 09:36
j'ai repris tes valeurs car il m'en manquait quelques unes et je les ai ajoutées à mon code. J'utilise pour ma part 2 tableaux, comme çà, on peut changer dans les 2 sens.
Dim NOMBRE
Dim VALEURS1
VALEURS1 = Array("ç","ä§","é","ä©","è","ä¨","ê","äª","ë","ä«","Ã?","ä?","Ã?","ä?","î","ä®","ï","ä¯","ì","Ã?","ä?","ò","ä²","ô","ä´","ö","ä¶","õ","ó","ø","äµ","ä³","ä¸","Ã?","ä?","Ã?","ä?","à ","ä ","â","ä¢","ä","ä¤","Ã¥","ä¥","Ã?","ä?","Ã?","ä?","ù","û","ü","ä¼","Ã?","Ã?","ä¹","ä»","ä¼","ä¼","ä?","ä?","ò","ñ")
VALEURS2 = Array("ç", "ç", "é", "é", "è", "è", "ê", "ê", "ë", "ë", "Ê", "Ê", "Ë", "Ë", "î", "î", "ï", "ï", "ì", "Î", "Î", "ò", "ò", "ô", "ô", "ö", "ö", "õ", "ó", "ø", "õ", "ó", "ø", "Ô", "Ô", "Ö", "Ö", "à", "à", "â", "â", "ä", "ä", "å", "å", "Â", "Â", "Ä", "Ä", "u", "û", "ü", "ü", "Û", "Ü", "u", "û", "ü", "ü", "Û", "Ü", "ñ", "ñ")
texte = "mon texte"
temp = 0
For each NOMBRE in VALEURS1
texte = replace( texte, VALEURS1(temp), VALEURS2(temp) )
temp = temp+1
next
26 juin 2007 à 20:26