Limpiar string

22/07/2009 - 19:59 por Pintamono | Informe spam
Que tal,

tengo un problema con lo siguiente...

Via socket recibo un texto y en algunas ocasiones recibo ademas de la
respuesta esperada un valor "\0" esto se supone que es el fin de linea
pero no hallo como sacarlo...

Mi respuesta esperada seria algo como

"0732ISO0250000330210F23C84812E808402000000001000000000063944200"

pero esta cosa me responde

"0732ISO0250000330210F23C84812E808402000000001000000000063944200\0"

he tratado con string.replace, string.remove y no hay caso...

alguna idea?

Para recibir los datos hago lo siguiente

int bytesRec = client.Receive(bytes);
Respuesta = Encoding.ASCII.GetString(bytes, 0, bytesRec);

el problema es que esa respuesta la guardo en SQL pero al llevar el
valor en cuestion se me cae con error "Unclosed quotation mark after
the character string "

Dato: estoy amarrado a una dll de comunicacion con sql por lo que el
unico metodo de consulta es generar la consulta en el codigo, o sea,
no usar procedimientos almacenados.

Y lo hago asi:

INSERT INTO TABLA (campo, texto) VALUES
(campo,'0732ISO0250000330210F23C84812E808402000000001000000000063944200\0')

y eso se me cae...

Alguna idea u orientacion?

Gracias.
 

Leer las respuestas

#1 SoftJaén
22/07/2009 - 21:45 | Informe spam
"Pintamono" escribió:

Mi respuesta esperada seria algo como

"0732ISO0250000330210F23C84812E808402000000001000000000063944200"

pero esta cosa me responde

"0732ISO0250000330210F23C84812E808402000000001000000000063944200\0"

he tratado con string.replace, string.remove y no hay caso...

alguna idea?



Hola:

Puedes obtener una nueva cadena sin la terminación \0 de la siguiente
manera:

string valor =
"0732ISO0250000330210F23C84812E808402000000001000000000063944200\0";

// Obtenemos el índice
int index = valor.LastIndexOf("\0");

// Obtenemos la nueva cadena
valor = valor.Substring(0, index);

MessageBox.Show(valor);

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

Preguntas similares