FF multi converter, la conversion fácil entre formatos

Hasta ahora utilizaba WinFF, pero encontré y recomiendo un programa que hace uso de varios programas. Se trata de FF multi converter . En vez de tratar con la linea de comandos, tiene una interfaz gráfica muy intuitiva, que nos facilitará las tareas a la hora de convertir entre distintos formatos de audio, vídeo, imagen y documentos.

La aplicación está escrita en python3 y PyQt4, y es software libre. Utiliza ffmpeg para ficheros de audio y vídeo, unoconv para ficheros de documentos y ImageMagick para la conversión de ficheros de imagen. Por esta poderosa razón, tenemos una gran cantidad de formatos para convertir entre ellos: read more

Leer más » 4 Comentarios

Curso C# con Mono – Conversión de tipos e información cultural

Cuando estamos trabajando con diferentes tipos de datos, siempre conviene conocer los mecanismos para convertir un tipo de datos en otros. Si a eso le sumamos, que podamos hacer aplicaciones en las que se trabaje introduciendo datos siguiente el formalismo español (comas para separar decimales, puntos para separar miles) o viceversa (podéis ver un mapa de dónde se usa cada separador decimal aquí).

Esto es lo que se llama la información cultural, que se sitúa dentro del ensamblado: System.Globalization, y que aparte de en este tema es conveniente conocer para otras tareas.

Casting

Es la forma más simple de hacer una conversión de datos. Está directamente heredada de C y puede ser implícita (si no se especifica) o explícita (cuando sí lo hacemos). Tiene grandes limitaciones porque básicamente sólo permite no convertir, sino camuflar, para una instrucción en concreto el tipo de dato.

Veamos un ejemplo:

int i = 10;
float f = 0;
f = i;  // conversión implícita
f = 0.5F;
i = (int)f;  // conversión explícita. Existe pérdida de información, los decimales

Métodos ToString

Al igual que en otros muchos lenguajes de programación, a este nivel de abstracción, existe un método ToString, definido en cada clase, que convierte cualquier objeto en una cadena. Si tenemos un entero que tiene dentro el valor 1, devolverá una cadena “1”; igualmente pasará  con un decimal, pero aquí es donde entra la información cultural en juego. Si tenemos la cultura predefinida como la española, mostrará comas y punto de acuerdo a nuestra forma de hacerlo, si definimos otra cultura predefinida, el comportamiento cambiará conforme a eso. También podemos cambiar de forma puntual la cultura predefinida para un punto en concreto.

Veamos ejemplos de uso avanzado de ToString usando especificadores, para mostrar el mismo número por pantalla con decimales, sin ellos, en formato moneda, con porcentaje…

decimal valor = 16325.62m; string especificador; // Sin especificador Console.WriteLine("Sin el especificador tenemos el valor: " + valor.ToString()); // Especificador numérico estándar especificador = "G"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 16325,62 especificador = "C"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 16.325,62€ especificador = "E04"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 1,6326E+004 especificador = "F"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 16325,62 especificador = "N"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 16.325,62 especificador = "P"; Console.WriteLine("Con el especificador: " + especificador + " tenemos el valor: " + valor.ToString(especificador)); // Muestra: 1.632.562,00% read more

Leer más » 6 Comentarios