Converter caracteres tipo "%c3%a9" para "é"?

Pessoal, não sei como procurar uma solução para este problema aqui no fórum, então perdão desde já se esta pergunta for muito batida…

Bem, pelo que vi, estes tipos de caracteres “%c3%a9” , “%c3%a7” e “%20” são, respectivamente, “é”, “ç” e " " (espaço)…
Agora, como eu converto eles para os correspondentes certos ISO8859-1?

Não sei que tipo de caracteres são esses (%c3%a9)… (Se são unicode, UTF-8 e assim vai…) Então estou bem perdido em como transformar “%c3%a9” em “é”…

Alguém poderia me ajudar nessa tarefa?
Desde já, grato!

O URLDecoder ajudaria?

Conforme esta referência:http://www.jeppesn.dk/utf-8.html

[code]Character Latin1 Unicode UTF-8 Latin1
code interpr.

         A0      00 A0       C2 A0   Â 

¡ A1 00 A1 C2 A1 ¡
¢ A2 00 A2 C2 A2 ¢
£ A3 00 A3 C2 A3 £
¤ A4 00 A4 C2 A4 ¤
¥ A5 00 A5 C2 A5 Â¥
¦ A6 00 A6 C2 A6 ¦
§ A7 00 A7 C2 A7 §
¨ A8 00 A8 C2 A8 ¨
© A9 00 A9 C2 A9 ©
ª AA 00 AA C2 AA ª
« AB 00 AB C2 AB «
¬ AC 00 AC C2 AC ¬
­ AD 00 AD C2 AD ­
® AE 00 AE C2 AE ®
¯ AF 00 AF C2 AF ¯
° B0 00 B0 C2 B0 °
± B1 00 B1 C2 B1 ±
² B2 00 B2 C2 B2 ²
³ B3 00 B3 C2 B3 ³
´ B4 00 B4 C2 B4 ´
µ B5 00 B5 C2 B5 µ
¶ B6 00 B6 C2 B6 ¶
· B7 00 B7 C2 B7 ·
¸ B8 00 B8 C2 B8 ¸
¹ B9 00 B9 C2 B9 ¹
º BA 00 BA C2 BA º
» BB 00 BB C2 BB »
¼ BC 00 BC C2 BC ¼
½ BD 00 BD C2 BD ½
¾ BE 00 BE C2 BE ¾
¿ BF 00 BF C2 BF ¿

À C0 00 C0 C3 80 Ã[80]
Á C1 00 C1 C3 81 Ã[81]
 C2 00 C2 C3 82 Ã[82]
à C3 00 C3 C3 83 Ã[83]
Ä C4 00 C4 C3 84 Ã[84]
Å C5 00 C5 C3 85 Ã[85]
Æ C6 00 C6 C3 86 Ã[86]
Ç C7 00 C7 C3 87 Ã[87]
È C8 00 C8 C3 88 Ã[88]
É C9 00 C9 C3 89 Ã[89]
Ê CA 00 CA C3 8A Ã[8A]
Ë CB 00 CB C3 8B Ã[8B]
Ì CC 00 CC C3 8C Ã[8C]
Í CD 00 CD C3 8D Ã[8D]
Î CE 00 CE C3 8E Ã[8E]
Ï CF 00 CF C3 8F Ã[8F]
Ð D0 00 D0 C3 90 Ã[90]
Ñ D1 00 D1 C3 91 Ã[91]
Ò D2 00 D2 C3 92 Ã[92]
Ó D3 00 D3 C3 93 Ã[93]
Ô D4 00 D4 C3 94 Ã[94]
Õ D5 00 D5 C3 95 Ã[95]
Ö D6 00 D6 C3 96 Ã[96]
× D7 00 D7 C3 97 Ã[97]
Ø D8 00 D8 C3 98 Ã[98]
Ù D9 00 D9 C3 99 Ã[99]
Ú DA 00 DA C3 9A Ã[9A]
Û DB 00 DB C3 9B Ã[9B]
Ü DC 00 DC C3 9C Ã[9C]
Ý DD 00 DD C3 9D Ã[9D]
Þ DE 00 DE C3 9E Ã[9E]
ß DF 00 DF C3 9F Ã[9F]

à E0 00 E0 C3 A0 Ã
á E1 00 E1 C3 A1 á
â E2 00 E2 C3 A2 â
ã E3 00 E3 C3 A3 ã
ä E4 00 E4 C3 A4 ä
å E5 00 E5 C3 A5 Ã¥
æ E6 00 E6 C3 A6 æ
ç E7 00 E7 C3 A7 ç
è E8 00 E8 C3 A8 è
é E9 00 E9 C3 A9 é
ê EA 00 EA C3 AA ê
ë EB 00 EB C3 AB ë
ì EC 00 EC C3 AC ì
í ED 00 ED C3 AD í
î EE 00 EE C3 AE î
ï EF 00 EF C3 AF ï
ð F0 00 F0 C3 B0 ð
ñ F1 00 F1 C3 B1 ñ
ò F2 00 F2 C3 B2 ò
ó F3 00 F3 C3 B3 ó
ô F4 00 F4 C3 B4 ô
õ F5 00 F5 C3 B5 õ
ö F6 00 F6 C3 B6 ö
÷ F7 00 F7 C3 B7 ÷
ø F8 00 F8 C3 B8 ø
ù F9 00 F9 C3 B9 ù
ú FA 00 FA C3 BA ú
û FB 00 FB C3 BB û
ü FC 00 FC C3 BC ü
ý FD 00 FD C3 BD ý
þ FE 00 FE C3 BE þ
ÿ FF 00 FF C3 BF ÿ[/code]

Então eu tenho que procurar uma solução que transforme de UTF-8 para ISO8859-1?
Algo como tipo:

byte[] iso88591Data = theString.getBytes("ISO-8859-1");

:?: :?: :?: :?: Estou totalmente perdido (até pq esse código que passei, não me retorna os caracteres certos… :cry: )

Vou testar agora mesmo, e já te falo!

Meio problema foi resolvido :smiley:

URLDecoder.decode(texto, "ISO-8859-1");

Me resultou em:
“%c3%a9” virou “é” :?:
“%c3%a7” virou “ç” :?:
“%20” virou " " :!: (esse ficou blz! Como deveria ser!)

Mais alguma luz?

Eureca!

Problema resolvido com:

URLDecoder.decode(URLDecoder.decode(texto, "UTF-8"), "ISO-8859-1");

Não sei se é a melhor solução, mas resolveu o problema 8)

Obrigado pela dica!

1 curtida