replace

30/05/2005 - 09:44 por Sonia | Informe spam
existe 'replace' o algo similar para valores decimales o doubles??
es q tengo los precios con 'comas' y parece ser q tengo q cambiarlas por
puntos para poder sumarlas, etc
1º lo declaraba como string y hacia esto:
iva = iva.Replace(",", ".")

pero no me cogia los decimales y necesito hacer calculos exactos

hay alguna instruccion similar a 'replace' en decimal o double??



gracias!!
 

Leer las respuestas

#1 A.Poblacion
30/05/2005 - 10:43 | Informe spam
"Sonia" wrote in message
news:
existe 'replace' o algo similar para valores decimales o doubles??
es q tengo los precios con 'comas' y parece ser q tengo q cambiarlas por
puntos para poder sumarlas, etc
1º lo declaraba como string y hacia esto:
iva = iva.Replace(",", ".")

pero no me cogia los decimales y necesito hacer calculos exactos

hay alguna instruccion similar a 'replace' en decimal o double??



Los decimal y double NO TIENEN ni punto ni coma. Se guardan internamente
en binario, a base de unos y ceros. El punto o la coma aparecen cuando los
conviertes en strings para visualizarlos. Asi que el problema de que tengan
punto o coma es del proceso que usas para convertirlos en strings. Una vez
convertidos, sí que tienen punto o coma, pero como en ese momento ya son
strings, les puedes aplicar el Replace de los strings.
En cuanto al tema de la conversión, ten presente que Visual Basic, de
manera predeterminada, hace conversiones implícitas cuando le pasas un valor
numérico a una variable de tipo string, o a una función que recibe un
string, y viceversa. Si quieres que el compilador te avise cada vez que
haces una conversión de este tipo, ponle "On" en el "Option Strict" en las
Propiedades del Proyecto.
Una vez que hayas detectado dónde se te están produciendo esas
conversiones implícitas, si quieres puedes cambiarlas por conversiones
explícitas y usar en ellas la funcionalidad de System.Globalization para
especificar exactamente los formatos de conversión que te interesan.

Preguntas similares