Alguém sabe como converter uma String
do tipo UTF para o tipo ISO-8859-1 ?
Desde já agradeço.
Alguém sabe como converter uma String
do tipo UTF para o tipo ISO-8859-1 ?
Desde já agradeço.
Tua string UTF-8 está em qual meio? Pq se for char[] ou String essa conversão é impossivel uma vez que java usa um chatset fixo para a representação em memoria de Strings, UTF-16 acho.
Voce pode converter na saida.
Usando a classe OutputStreamWriter, por exemplo:
public void escreveEmLatin1(OutputStream out, String str) throws IOException {
OutputStreamWriter w = new OutputStreamWriter(out, "ISO-8859-1");
w.write(str);
}
Tratamento de charsets no java deve ser feito em 3 lugares basicamente:
-na leitura dos dados, ajuste o charset de acordo com o da entrada.
-na escrita do dados, escolha o charset adequato para a saída.
-quando manipulando streams binarios ou blocos de bytes como strings.
Quase ia esquecendo um detalhe importante, é importante verificar se sua JVM suporta o charset em questão caso ele não seja um dos obrigatorios, que são US-ASCII, ISO-8859-1, UTF-8, UTF-16, UTF-16BE e UTF-16LE.