Usuário com melhor resposta
Conversão de Bytes - Interfaceamento

Pergunta
-
Pessoal bom dia!
Estou com a seguinte código abaixo e nele eu consigo conectar e receber informações do aparelho mas quando eu exibo as informações que aparelho me mandou conforme o comando MessageBox abaixo ele me amostra um System.byte[].
Pergunta: Como que eu converto isso de forma legível para um humano entender o que o aparelho mandou?
MessageBox.Show("Echoed test = {0}", Encoding.ASCII.GetString(bytes, 0, bytesRec));
O aparelho conforme o manual envia um comando <ENQ> via TCP/IP
e eu devo enviar um <ACK> para ele. via TCP/IP
Segue o codigo completo abaixo:
public string conftcp_server(int porta, string ip)//testado
{
string dados = string.Empty;
byte[] bytes = new byte[1024];
// Connect to a remote device.
try
{
IPAddress ipAddress = IPAddress.Parse(ip);
IPEndPoint remoteEP = new IPEndPoint(ipAddress, porta);
Socket sender = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
try
{
sender.Connect(remoteEP);
sender.RemoteEndPoint.ToString());
while (true)
{
int bytesRec = sender.Receive(bytes);
MessageBox.Show("Echoed test = {0}", Encoding.ASCII.GetString(bytes, 0, bytesRec));
byte[] msg = Encoding.ASCII.GetBytes("<EOF>");
dados = msg.ToString();
int bytesSent = sender.Send(msg);
MessageBox.Show(msg.ToString());
}
sender.Shutdown(SocketShutdown.Both);
sender.Close();
}
catch (ArgumentNullException ane)
{
Console.WriteLine("ArgumentNullException : {0}", ane.ToString());
}
catch (SocketException se)
{
Console.WriteLine("SocketException : {0}", se.ToString());
}
catch (Exception e)
{
Console.WriteLine("Unexpected exception : {0}", e.ToString());
}
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
return dados;
}
Fabricio
Respostas
-
Bom dia Fabriciovale,
Obrigado pela participação no Fórum MSDN.
Tente o método Encoding.GetString Method (Byte[])
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Robson William SilvaModerator segunda-feira, 22 de agosto de 2016 12:49
Todas as Respostas
-
Bom dia Fabriciovale,
Obrigado pela participação no Fórum MSDN.
Tente o método Encoding.GetString Method (Byte[])
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Robson William SilvaModerator segunda-feira, 22 de agosto de 2016 12:49
-
Bom dia,
Devido a falta de resposta do usuário
essa thread está sendo fechada.
Se o problema ainda estiver ocorrendo,
favor abrir uma nova thread.
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.