Ola pessoal estou tenho que ler um arquivo texto… e gostaria de saber de da pra detectar… o encoding dele.
algo como File.gerCurrentEncoding ou se isso é imposivel pois dependendo da onde vem o arquivo texto grava errado no banco de dados.
Obrigado.
Ola pessoal estou tenho que ler um arquivo texto… e gostaria de saber de da pra detectar… o encoding dele.
algo como File.gerCurrentEncoding ou se isso é imposivel pois dependendo da onde vem o arquivo texto grava errado no banco de dados.
Obrigado.
Essa informação não vem no arquivo, então não tem como saber de forma precisa.
Mas dá pra tentar adivinhar a codificação; os navegadores fazem isso o tempo todo.
Sei dessa biblioteca, mas nunca usei: http://code.google.com/p/juniversalchardet/
Segue um link que pode ser útil:
http://blog.publicobject.com/2010/08/handling-byte-order-mark-in-java.html
na verdade necessito ler o arquivo txt nestes 2 formatos…
UTF-8
ISO-8859-1
Alguem tem algum codigo de exemplo por que o objeto file não aceita eu setar o encoding.
Ele da exception quando vai ter UTF- 8 e ISO-8859-1
por que ele pega o default do SO que no caso é CP1252 dai quando vai ler UTF - 8 da pau.
FileReader r =new FileReader(file);
r.getEncoding();
reader = new BufferedReader(r);
Tenta ler assim:
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF8"));