PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 22/03/2024 09:14:55

mourad
Membre

Errer le caractère dans l'encodage UTF8 pas d'équivalent dans WIN1252

Bonjour tout le monde,

J'ai une application C++ Qt5 qui permet de mettre à jour les données de ma base de données. Ma base à WIN 1252 comme encodage et l'application tourne sous Windows mais je rencontre cette erreur le caractère dont la séquence d'octets dans l'encodage « UTF8 » n'a pas d'équivalent dans l'encodage « WIN1252 »

Est ce quelqu'un peut m'aider à résoudre ce problème.

Merci d'avance

Hors ligne

#2 22/03/2024 10:39:08

rjuju
Administrateur

Re : Errer le caractère dans l'encodage UTF8 pas d'équivalent dans WIN1252

WIN1252 ne peut pqs représenter tous les caractères existant en UTF-8, il n'y a donc pas trop de solution facile.  Soit vous migrez votre base pour la stocker en UTF-8, soit vous faites en sorte de n'envoyer que des caractères valides en WIN1252.

Hors ligne

#3 22/03/2024 18:36:47

Re : Errer le caractère dans l'encodage UTF8 pas d'équivalent dans WIN1252

Hello,

mourad a écrit :

je rencontre cette erreur le caractère dont la séquence d'octets dans l'encodage « UTF8 » n'a pas d'équivalent dans l'encodage « WIN1252 »


C'est une erreur de la DB ou bien de l'application ? Vous avez accès au code source de l'application ?

Le QString travaille en UNICODE sur tous les O/S. Après si l'erreur est produite par l'application, il est possible que dans le code source de l'appli il soit fait appel à QString.toLocal8Bit() auquel cas, il n'y a pas grand chose à faire : Soit recompiler/exécuter l'appli sous Linux, soit remplacer les appels QString.toLocal8Bit() par des appels QString.toUtf8()

Si l'appli exporte les QString en Utf8, il faut bien sûr migrer la DB en UTF8.

Dernière modification par herve.lefebvre (22/03/2024 18:44:10)

Hors ligne

Pied de page des forums