Récupération contenu WebArea et caractère accentués

Salut à tous,

Pour une petite base, j’affiche le contenu d’une URL dans une webArea, et je récupère quelques bout du contenu de la page web dans des champs.
Je récupère le code source avec WA Lire Contenu page, puis je récupère dedans ce dont j’ai besoin, sans aucun problème.

Mon seul soucis, c’est qu’il y a des caractères accentués html dans les textes que je récupère. Y’a un moyen simple de convertir une chaine “encodée” HTML en chaine UTF8 ? Ou le plus simple est de gérer à la main les 4/5 caractères que je peux croiser ?

Salut Jayce,
ça dépend de l’encodage utilisé, exemple avec https://www.codetable.net/decimal/38l’esperluette>…
En décimal ou en hexa, chance, il n’y a plus qu’à extraire le nombre et faire Char(nombre).
Si c’est le nom qui est utilisé, c’est moins marrant, il faut se taper la table d’équivalence (le genre au cas où des fois que si jamais géant). Sur https://www.freeformatter.com/html-entities.html#misc-html-entitiescette page> tu as une liste complète, apparemment. Je la mentionne car elle se copie/colle gentiment dans un tableur :
https://forums.4d.com/4DBB_Main/x_User/4467/files/31204105.zip
…lequel est exportable en texte, pour constituer un bon point de départ à la méthode de ton goût.

Merci, ça semble être du décimal.
Je vais donc me faire une petite boucle qui parse tout ça.
Merci.

Comme il pleut :
<code 4D>
$html_t:=$1
TABLEAU ENTIER LONG($pos_al;0) //besoin de tableau car on veut capturer le décimal dans la regex
TABLEAU ENTIER LONG($len_al;0)
$rx_t:="&#(\d{1,4});" //parenthèses = capturer le nombre
$start_l:=1
Tant que (Trouver regex($rx_t;$html_t;$start_l;$pos_al;$len_al))
$find_t:=Sous chaîne($html_t;$pos_al{0};$len_al{0}) //l’entité html
$decimal_l:=Num(Sous chaîne($html_t;$pos_al{1};$len_al{1})) //le nombre
$remplace_t:=Caractère($decimal_l)
$html_t:=Remplacer chaîne($html_t;$find_t;$remplace_t;*) //tant qu’à faire on remplace tout…
$start_l:=$pos_al{0}+$len_al{0}+1
Fin tant que
$0:=$html_t
</code 4D>