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

5 respostas
E

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!

5 Respostas

B

O URLDecoder ajudaria?

E

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

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   ÿ

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: )

E

Vou testar agora mesmo, e já te falo!

E

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?

E

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!

Criado 23 de abril de 2010
Ultima resposta 23 de abr. de 2010
Respostas 5
Participantes 2