[Gambas-user] Retrieve charset of mimepart
roberto
rhoct at ...325...
Fri Nov 7 09:03:06 CET 2014
Hi Benoît (it is always a pleasure to read you in mailing list)
we have eg 3 cases:
1°->
"Content-Type: text/plain; charset="iso-8859-1"
print hpart.ContentType
output-> "text/plain"
print hpart.Header["Content-type"]
output-> text/plain; charset="iso-8859-1"
2°->
"Content-Type: text/plain; charset=windows-1252; format=flowed"
print hpart.ContentType
output-> "text/plain"
print hpart.Header["Content-type"]
output-> "text/plain; charset=windows-1252; format=flowed"
3°->
->Content-Type: text/plain;
charset="UTF-8" <-
print hpart.ContentType
output-> "text/plain"
print hpart.Header["Content-type"]
output-> text/plain; charset="UTF-8"
I found the following solution that seems to work, waiting for your
review with the possibility of using hpart.charset
s = hPart.Headers["content-type"]
If InStr(s, "charset") > 0 Then
s = Mid(s, InStr(s, "charset=") + 8)
s = Left(s, InStr(s & " ", " "))
s = Replace(s, ";", "")
s = Trim(Replace(s, Chr(34), ""))
Try s = Conv(hPart.Data, s, "utf-8")
If Error Then Message.Error("errore nel decodificare
una parte mime " & Error.text, "ok")
Return
Else
Return hpart.Data
Endif
Regards
Il 06/11/2014 14:46, Benoît Minisini ha scritto:
> Le 06/11/2014 13:20, roberto a écrit :
>> Thanks Jorge for you fast reply
>>
>> I have tried with:
>>
>> s = hPart.Headers["content-type"]
>> If InStr(s, "charset") > 0 Then
>> bla bla bla (estrapolate "charset" content )
>> endif
>>
>> but is not an excellent solution
>>
> AFAIK, the only place where the charset is specified is in the "charset"
> part of the Content-Type header (that you can get with the
> hPart.ContentType property directly).
>
> If the charset is not specified, I guess that you must guess!
>
> Regards,
>
More information about the User
mailing list