Posté par BFG .
En réponse à la dépêche Le langage D.
Évalué à 3.
Dernière modification le 09 juin 2012 à 20:10.
En fait, il semblerait que ce soit le writefln qui pose problème, car "J├®r├┤me" est l'interprétation CP-850 des octets correspondants à "Jérôme" encodé en UTF-8. argv est bien interprété et contient les octets UTF-8 de "Jérôme", et writefln écrit ces octets sans tenir compte de l'encodage de la console.
Pourquoi CP-850 alors que la console supporte bien Unicode ? Probablement parce que la variante ANSI de la fonction a été utilisée, et non la variante Unicode. Le problème vient donc de writefln.
[^] # Re: Je cherche à comprendre
Posté par BFG . En réponse à la dépêche Le langage D. Évalué à 3. Dernière modification le 09 juin 2012 à 20:10.
En fait, il semblerait que ce soit le
writeflnqui pose problème, car "J├®r├┤me" est l'interprétation CP-850 des octets correspondants à "Jérôme" encodé en UTF-8.argvest bien interprété et contient les octets UTF-8 de "Jérôme", etwriteflnécrit ces octets sans tenir compte de l'encodage de la console.Pourquoi CP-850 alors que la console supporte bien Unicode ? Probablement parce que la variante ANSI de la fonction a été utilisée, et non la variante Unicode. Le problème vient donc de
writefln.