Olá comunidade,
estou lendo o conteúdo de uma página em html. estou utilizando o seguinte código:
public class Retriever {
public static void main(String[] args) throws Exception {
URL diarioCinemaPrincipal = new URL("http://www.example.com");
URLConnection diarioCinemaPrincipalConexao = diarioCinemaPrincipal.openConnection();
BufferedReader input = new BufferedReader(new InputStreamReader(diarioCinemaPrincipalConexao.getInputStream()));
String inputLine;
while ((inputLine = input.readLine()) != null) {
System.out.println(inputLine);
}
input.close();
}
}
dessa maneira, estou recebendo a página com alguns problemas de codificação, especialmente na acentuação das palavras. no html retornado, tenho o seguinte trecho logo no início:
logo, entendo que a html está em iso8859-1 e as strings em java são criadas utilizando alguma versão do UTF. tentei fazer a conversão alterando o laço while para o seguinte:
while ((inputLine = input.readLine()) != null) {
byte [] someBytes = inputLine.getBytes("ISO-8859-1");
String temp = new String(someBytes,"UTF-8");
System.out.println(temp);
}
o problema persiste, apenas o caractere de erro é alterado. também tentei seguir as dicas de :
[list]
http://www.portaljava.com/forum/posts/list/19093.page
http://www.exampledepot.com/egs/java.nio.charset/ConvertChar.html
[/list]
e não obtive sucesso. alguma sugestão?
minha versão de java é:
java version “1.6.0_0”
IcedTea6 1.3.1 (6b12-0ubuntu6.1) Runtime Environment (build 1.6.0_0-b12)
OpenJDK Server VM (build 1.6.0_0-b12, mixed mode)