Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

decoder UTF8

18 réponses
Avatar
Marc
Bonjour,

Je cherche une source pour décoder de l'UTF-8 en AINSI ??

Quelqu'un a t il cela sous la main.

Par avance merci.

Marc

8 réponses

1 2
Avatar
Fred
Dans : news:,
Aski disait :
Hello Fred,



Pourtant des extraits du décodage dans XtractOE sont
S = Replace(S, "=" & vbCrLf, "")
puis (partiel)
For i = &H20 To &H2F
S = Replace(S, "=" & Format$(Hex$(i)), Chr$(i)) '32 à
47 Next i

et ce décodage fonctionne assez bien.



Je n'en doute pas. C'est pour cela que je modérais ma remarque en
mentionnant qu'il n'existe peut-être plus, à l'heure actuelle, de
serveurs qui complètent la ligne avec des blancs.
J'avais passé le lien vers le document original, mais le voici en
français :
http://jlr31130.free.fr/rfc2045.html
§6.7, point (3)


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
Aski
Hello Fred,

Tu as savamment écrit :

Dans : news:,
Aski disait :
Hello Fred,



Pourtant des extraits du décodage dans XtractOE sont
S = Replace(S, "=" & vbCrLf, "")
puis (partiel)
For i = &H20 To &H2F
S = Replace(S, "=" & Format$(Hex$(i)), Chr$(i)) '32 à
47 Next i

et ce décodage fonctionne assez bien.



Je n'en doute pas. C'est pour cela que je modérais ma remarque en
mentionnant qu'il n'existe peut-être plus, à l'heure actuelle, de
serveurs qui complètent la ligne avec des blancs.
J'avais passé le lien vers le document original, mais le voici en
français :
http://jlr31130.free.fr/rfc2045.html
§6.7, point (3)



Je me suis largement inspiré des RFC mais sans tout détailler.
Il est vrai que j'ai dû gérer le problème des espaces et des tabulations
comme dans le cas du décodage des textes en HTML.
J'ai aussi beaucoup fait fonctionner par les tests grâce aux nombreux
exemples fournis par Geo.

Cordialement
Henri
Avatar
SAISAS
Bonjour,

tu as la fonction MultiByteToWideChar qui sert à cela ...

Le code (piqué sur un forum) :

Private Enum CP
CP_ACP = 0
CP_OEMCP = 1
CP_MACCP = 2
CP_THREAD_ACP = 3
CP_SYMBOL = 42
CP_UTF7 = 65000
CP_UTF8 = 65001
End Enum

Private Declare Function MultiByteToWideChar Lib "kernel32" (ByVal CodePage
As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As String, ByVal
cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long)
As Long

Private Declare Function WideCharToMultiByte Lib "kernel32" (ByVal CodePage
As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal
cchWideChar As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As
Long, ByVal lpDefaultChar As Long, ByVal lpUsedDefaultChar As Long) As Long

Public Function UTF8ToA(ByVal wText As String) As String
Dim vNeeded As Long
Dim vSize As Long
Dim TempStr As String

vSize = Len(wText)
vNeeded = MultiByteToWideChar(CP_UTF8, 0, wText, vSize, 0, 0)
TempStr = String(vNeeded, 0)
MultiByteToWideChar CP_UTF8, 0, wText, vSize, StrPtr(TempStr), vNeeded
TempStr = Replace(TempStr, "<", "<")
TempStr = Replace(TempStr, ">", ">")
UTF8ToA = TempStr

End Function

Cordialement.

"Marc" a écrit :

Bonjour,

Je cherche une source pour décoder de l'UTF-8 en AINSI ??

Quelqu'un a t il cela sous la main.

Par avance merci.

Marc





Avatar
Gloops
SAISAS a écrit, le 10/05/2007 16:18 :
Bonjour,

tu as la fonction MultiByteToWideChar qui sert à cela ...




Salut,

As-tu suivi la conversation ?
Avatar
Fred
Dans : news:,
Gloops écrivait :
SAISAS a écrit, le 10/05/2007 16:18 :
Bonjour,

tu as la fonction MultiByteToWideChar qui sert à cela ...




Salut,

As-tu suivi la conversation ?



Je pense que oui puisque SAISAS fournit une solution «en compréhension»
à la seconde partie de la question (UTF-8 vers Unicode) :-)


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
Gloops
Fred a écrit, le 10/05/2007 21:16 :
As-tu suivi la conversation ?



Je pense que oui puisque SAISAS fournit une solution «en compré hension»
à la seconde partie de la question (UTF-8 vers Unicode) :-)





Oui.
Enfin si je ne m'abuse, c'est la solution proposée par Jean-Marc au bout
d'une demi-heure, à la suite de quoi Marc se rendait compte que ce
n'était en fait pas du UTF-8 qu'il avait à convertir.

Bon, enfin si on en a besoin, c'est le moment ...
Avatar
Fred
Dans : news:%,
Gloops disait :

Enfin si je ne m'abuse, c'est la solution proposée par Jean-Marc au
bout d'une demi-heure,



Exact, c'est moi qui ne suit pas ! Je me suis laissé abusé par les
substitutions de caractères proposées par la suite.

à la suite de quoi Marc se rendait compte que
ce n'était en fait pas du UTF-8 qu'il avait à convertir.




Si, mais en second lieu, car le Quoted Printable, une fois transformé,
renvoie une série d'octets correspondant à un encodage UTF-8.

--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
Gloops
Fred a écrit, le 11/05/2007 07:19 :
Si, mais en second lieu, car le Quoted Printable, une fois transformà ©,
renvoie une série d'octets correspondant à un encodage UTF-8.




C'est pourtant vrai ...
Je crois bien que j'ai parlé un peu vite.
1 2