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

5 respostas
edsonlopes

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?

edsonlopes

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

edsonlopes

Vou testar agora mesmo, e já te falo!

edsonlopes

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?

edsonlopes

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