14.1.09

Creando .csv

Nos informa correctamente wikipedia.org:

Los ficheros CSV (del inglés comma-separated values) son
un tipo de documento sencillo para representar datos en forma de tabla,
en las que las columnas se separan por comas (o punto y coma) y las
filas por saltos de línea.

El siguiente programa en C muestra como crear un archivo .csv.

#include <stdio.h>
int main()
{
    FILE * fp ;
    fp=fopen("miarchivo.csv","a");
    fprintf(fp,"Dato,");
    fclose(fp);
    return 0;
}



Primero se declara fp como puntero a archivo.
En la segunda línea, se utiliza el comando fopen() para abrir un archivo (si no existe
miarchivo.csv, se crea un nuevo archivo con ese nombre). La opción "a", indica que se debe abrir el archivo para añadir contenido al final del mismo, se pueden ver otras opciones en el link proporcionado o bien tipeando en la consola man fopen.
En la tercera línea se ejecuta fprintf(), para escribir donde apunte fp, en este caso al final del archivo miarchivo.csv. Notese que al final del dato debe agregarse la coma.
Si bien en este caso tan simple no se nota la diferencia, es buena práctica liberar el puntero como se hace en la última línea con fclose(). Esta acción libera el archivo para que pueda ser utilizado por otros procesos y libera recursos del sistema operativo.

El primer programa: "Hola Mundo"

El primer paso a seguir es escribir el programa en algún editor de texto tradicional (en nuestro caso VIM). El archivo holamundo.c tiene un código es exactamente igual a cualquier programa escrito en C:

#include <stdio.h>
int main(){
    printf("Hola Mundo!\n");
    return(0);

}

Luego debemos proceder a la complación del mismo. La compilación se realizará en una PC, la cual tiene una arquitectura diferente al TS-7260. Es por ello que necesitamos realizar una compilación cruzada, utilizando el "Entorno de Compilación Cruzada" (llamado Cross-Toolchain en inglés) provisto por el fabricante.
Descomprimimos entonces el archivo crosstool-linux-gcc-4.0.1-glibc-2.3.5.tar.bz2 que viene en el CD, por ejemplo en el directorio /opt. Para lograr compilar en cualquier directorio en el que estemos parados sin especificar la ruta en la que esta el compilador debemos agregar su PATH al sistema operativo, de manera que el mismo sepa donde buscar el compilador cuando ejecutemos el comando en la consola. Para ello hacemos:

export PATH=$PATH:/opt/crosstool/gcc-4.0.1-glibc-2.3.5/arm-unknown-linux-gnu/bin/arm-unknown-linux-gnu-gcc

donde arm-unknown-linux-gnu-gcc es el compilador propiamente dicho.
Ahora nos paramos en el directorio donde este guardado holamundo.c y ejecutamos el comando de compilación:

arm-unknown-linux-gnu-gcc holamundo.c -o holamundo

Tendremos entonces, si todo salio bien, el ejecutable listo para bajar al TS, lo cual podemos hacer con cualquier cliente FTP (nosotros utilizamos gFTP). Nos logueamos en el mismo vía telnet por ejemplo, nos paramos en el directorio donde hayamos bajado holamundo y tipeamos:

./holamundo

Con esto, recibiremos el famoso y alentador mensaje que queremos ver. En la imágen el ejecutable holamundo se llama holas y responde de una manera mas agradable, pero con la misma finalidad.