PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV Mobile 2024 → [WM17] UTF8VersChaîne
[WM17] UTF8VersChaîne
Started by Alex, Jan., 02 2012 7:27 PM - 5 replies
Registered member
203 messages
Popularité : +3 (3 votes)
Posted on January, 02 2012 - 7:27 PM
Bonjour à tous,

Je reprends une classe d'un projets Windows pour la porter sur iPad.

J'ai l'erreur suivante :
Erreur :Aucune syntaxe de UTF8VersChaîne ne correspond.
cFichier.mbFicUtf8VersAinsi, Procédure locale, ligne 18, colonne 17

Sur le code suivant :
sFicTexte est une chaine
...
sFicTexte = UTF8VersChaîne(sFicTexte, alphabetAnsi)

Je ne comprends pas, car cette fonction est marquée disponible dans l'aide.
Avez vous aussi cette erreur ?

Cordialement,

Alex
Registered member
203 messages
Popularité : +3 (3 votes)
Posted on January, 02 2012 - 9:35 PM
Une piste:

Si je surcharge la fonction, avec le code suivant, sans préciser le type de sTexte, il n'y a plus d'erreur, donc c'est le type chaine pour sTexte qui pose problème en configuration iPad.

PROCEDURE UTF8VersChaîne(LOCAL sTexte, LOCAL nAlphabet est un entier = alphabetDéfaut)

sRes = WL.UTF8VersChaîne(sTexte, nAlphabet)

RENVOYER sRes
Posted on January, 03 2012 - 12:37 AM
Bonjour Alex,

je n'ai pas regardé dans l'aide, mais je soupçonne que la fonction est
certes disponible, mais que les SYNTAXES disponibles ne sont pas les
mêmes en WD et WM, ainsi que semble l'indiquer le message d'erreur. Par
exemple, il est possible que le paramètre alphabetAnsi ne soit pas
supporté, ou que le 2 ème paramètre n'existe carrément pas, ou qu'il en
faille un 3ème en WM

Il suffira de lire l'aide de la fonction en détail pour trouver le problème

Cordialement


--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International

Plus d'information sur http://fabriceharari.com/index_FR.html


On 02/01/2012 13:47, Alex wrote:
Bonjour à tous,

Je reprends une classe d'un projets Windows pour la porter sur iPad.

J'ai l'erreur suivante :
Erreur :Aucune syntaxe de UTF8VersChaîne ne correspond.
cFichier.mbFicUtf8VersAinsi, Procédure locale, ligne 18, colonne 17

Sur le code suivant :
sFicTexte est une chaine
...
sFicTexte = UTF8VersChaîne(sFicTexte, alphabetAnsi)

Je ne comprends pas, car cette fonction est marquée disponible dans l'aide.
Avez vous aussi cette erreur ?

Cordialement,

Alex
Posted on January, 03 2012 - 12:37 AM
peut etre le alphabetansi qui est pas pris en charge, comme android qui n'a que le défaut

dans ta procédure tu as mis defaut et pas ansi

ca vient de la?
Registered member
203 messages
Popularité : +3 (3 votes)
Posted on January, 03 2012 - 2:04 PM
Bonjour,

Non j'ai testé avec tous les paramètres, c'est vraiment le type chaine qui pose problème visiblement. Si on passe une variable sans préciser le type il n'y a pas d'erreur de compil.

Cordialement,

Alex
Registered member
21 messages
Popularité : +2 (2 votes)
Posted on January, 03 2012 - 5:23 PM
Bonjour,

Les exécutables sur ios sont en mode "full Unicode".
Donc quand vous déclarez "sFicTexte est une chaîne", vous déclarez en fait une chaîne unicode. Or, UTF8VersChaine attend une chaîne ansi (normal).
Déclarez "sFicTexte est une chaîne ansi", ou peut-être que vous avez déjà de l’unicode "correct" dans votre chaîne !

Cordialement.