Los puntos y comas decimales: Víctimas de la cultura

… Y lo peor de todo, es que somos víctimas de eso nosotros también.

Hola Mundo, más botado no puede quedar mi blog. He decidido volver con un tema que me dió dolores de cabeza varios días y tiene que ver con las diferencias culturales y las matemáticas.

Me encontraba programando una aplicación sencilla que hace un formula sencilla para el cálculo de IMC (Índice de Masa Corporal). Esta fórmula  exige ingresar un valor decimal (una expresión numérica que contiene decimales).

El problema es que el lenguaje no tiene control sobre la realización de este tipo de cálculo, sino que para nosotros puede que la coma sea un indicador decimal o que sea el punto, pero de cualquier modo siempre va a ser diferente con otras culturas (como la inglesa).

Gracias a Dios, Alá, El Gran Arquitecto, belcebú (no sé a quien le rinden culto) este problema fue solucionado con una clase ya perteneciente al framework de .NET.

En VB.NET el tema es sencillo

  1. Importar System.Globalization
  2. Agregar estas líneas al método load o loaded:

System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo(«en-US»)
System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator = «.»

Con eso, el . siempre será un separador decimal en nuestra aplicación.

Ejemplo de escribir en un archivo con VB.NET

Hace algunos dias me dispuse a aprender VB.NET

Muchos saben que esto del desarrollo de aplicaciones no es mi fuerte, pero, sin asco, hay que aprender no mas para llegar a ser un profesional completo.

En este sencillo ejemplo, se muestra como un archivo de texto es creado en los documentos del usuario indicado en la aplicacion. 

No mas palabras y una pequenia imagen:

Nota

La aplicacion, el codigo de fuente y el proyecto de Visual Studio, lo pueden descargar desde aqui