2012-03-06 21 views

Respuesta

8

Puede utilizar un Unicode carácter de escape: \u0002

2

convertir el valor Integer de 2 a un char:

char cChar = (char)2; 
0

puede incrustar el STX dentro de una cadena de este modo:

byte[] myBytes = System.Text.Encoding.ASCII.GetBytes("\x02Hello, world!"); 
socket.Send(myBytes); 
12

Solo un comentario a la respuesta de GeoffM (No tengo suficientes puntos para comentar de la manera correcta).

Nunca debe incrustar STX (u otros caracteres) de esa manera con solo dos dígitos.

Si el siguiente carácter (después de "\ x02") era un dígito hexadecimal válido, eso también se analizaría y sería un desastre.

string s1 = "\x02End"; 
string s2 = "\x02" + "End"; 
string s3 = "\x0002End"; 

Aquí, s1 es igual a ".nd", ya 2E es el carácter de punto, mientras que S2 y S3 igual STX + "Fin".

1

\x02 es el código STX puede comprobar the ASCII Table

checkFinal = checkFinal.Replace("\x02", "End").ToString().Trim(); 
0

dentro de una cadena, claramente el Unicode format is best, pero para el uso como un byte, este enfoque funciona:

byte chrSTX = 0x02; // Start of Text 
byte chrETX = 0x03; // End of Text 
// etc...