Pegar valores de Arrays de bytes

4 respostas
P

Pessoal tenho um processo que coleto informações de uma balança da seguinte maneira:

byte[] bufferLeitura = new byte[20];

Depois eu passo esse array de bytes para um string da seguinte maneira:

String Dadoslidos = new String(bufferLeitura);

O retorno é algo do tipo:

<STX>+p`
Peso1
Peso2
lixo

O que eu pensei é quando eu receber uma linha do modelo

<STX>+p`

Eu retornasse com um System.out.println() as duas linhas seguintes, mas o negócio não rola, tentei dividir a String com substring() mas o máximo que consegui foi imprimir o próprio +p` ao invés dos valores corretos.

Alguém tem alguma dica para me ajudar?

4 Respostas

T


sem querer encher o saco, mas nao entendi quase nada do seu post…
vc recebe um array de bytes, depois converte para string e depois quer fazer o q?

P

Eu recebo tudo em Array de bytes, depois eu passo para a String só para poder printar na tela, o que eu preciso é ao receber a linha com o STX, conseguir capturar o valor das 2 linhas subsequentes.

Só isso.

T

De modo geral, laranjas são laranjas, maçãs são maçãs, caracteres são caracteres e bytes são bytes.

a) Imprima os bytes que você recebeu com a rotina printHex que eu devo ter postado várias vezes neste fórum. Provavelmente você deve estar errando algum offset.
b) Use System.arraycopy para copiar exatamente os bytes que você deseja usar para um segundo array de bytes, a partir do array original.

hashcode

Dá um split ai cara

String linhas[] = dadosLidos.split("\n");

dependendo de quebra use

String linhas[] = dadosLidos.split("\r\n");
Criado 19 de julho de 2006
Ultima resposta 19 de jul. de 2006
Respostas 4
Participantes 4