Bom dia a todos.
o seguinte:
string s = "TESTE\r\n";
para imprimir em JtextArea cada string “s” é impressa em uma nova linha.
então tenho o seguinte array de bytes:
byte[] arrayByte ={0x4c,0x54,0x45,0x53,0x54,0x45,0x13,0x10}; // "TESTE\r\n";
String str = new String(arrayByte, "UTF-8");// tentei também "ISO-8859-1"
a coversão é feita apenas para o texto, os caracteres \r \n não são obedecidos , eu estou convertendo errado ou os caracteres de
controle não faz parte da string ?
sds
j.silvestre
Resolvido da seguinte forma:
[code]
if (valorByte[n] == (byte) 0x13) valorByte[n] = ‘\r’;
if (valorByte[n] == (byte) 0x10) valorByte[n] = ‘\r’;
[\code]
o importante é que funcionou…
sds
j.silvestre
wellington
vc tem razão. eu estava pegando os dados em hexa. mas na verdade como vc disse é 10 e 13 decimal.
corrigido.
sds
j.silvestre
‘\r’ = 13 (decimal)
’\n’ = 10 (decimal)
e você colocou em hexa.
E não entendi porque do 0x4c no início sendo que você colocou no comentário que é equivalente a “TESTE\r\n”
Mude para
[quote=j.silvestre]Resolvido da seguinte forma:
[code]
if (valorByte[n] == (byte) 0x13) valorByte[n] = ‘\r’;
if (valorByte[n] == (byte) 0x10) valorByte[n] = ‘\r’;
[\code]
o importante é que funcionou…[/quote]
Na verdade, você mascarou o erro. 