Publi

  • Estadísticas de directorios en PHP

    A veces, tenemos la necesidad de generar una estadística básica de algún subdirectorio de nuestras aplicaciones. Por ejemplo, para ver cuánto tenemos ocupado en caché, y ver si ésta se está regenerando bien (es sólo un ejemplo), puede que tengamos un directorio donde alojemos los archivos que suben nuestros usuarios y queramos ver si crece o no en el tiempo.

    Este par de funciones pueden resultar útiles. Aún se pueden optimizar un poco, pero la idea aquí está.… Leer artículo completo

  • Formateando la salida en Serial para Arduino [1ª parte] ( y no sólo para Arduino )

    Arduino - Minicom - Emacs Una de las cosas que más echo de menos programando con Arduino es el formateo de texto de cara al serial, ya que éste sólo permite cadenas de texto o números, y no todo junto. En principio es comprensible, el sistema debe estar en un tamaño muy reducido, y esta característica engordará el binario. como mínimo 1.5Kb; Podemos optar por varias soluciones que explicaré en este post:

    • sprintf()
    • Usando la clase String
    • vsnprintf()
    • Inventar nuestro printf() particular con salida a cadena
    • Inventar nuestro printf() particular con salida a Serial

    Usando sprintf()

    Esta forma es muy sencilla y engordará nuestro ejecutable 1.5Kb aproximadamente.… Leer artículo completo

  • Tamaños de variables en Arduino

    Si estamos acostumbrados a programar para procesadores de 32 ó 64bits, tal vez creamos que en un Arduino podemos almacenar números extremadamente grandes. ¡ pues no ! Estamos ante procesadores sencillos, de 8bit, puede que sean demasiado… de los 80 (más grandes en los 80), pero dado lo pequeño que puede llegar a ser, puede valernos para fabricar cualquier gadget/utensilio/aparato… e incluso para aprender… que para eso estamos aquí.

    Para ver los tamaños de las variables aquí presentes podemos hacer el siguiente programa:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    // Presentar en el serial el tamaño de una variable o un tipo
    // de variable.
    Leer artículo completo
  • Tamaño de un fichero en C

    Veo en nosolounix un ejercicio similar. Se trata de averiguar el tamaño en bytes de un archivo (Luego podemos saber su tamaño en Kb, Mb, Gb…).

    Yo propongo una solución algo más ligera (sin necesidad de recorrer el fichero para contar sus bytes), utilizando las funciones fseek y ftell para posicionarnos y averiguar la posición del puntero del fichero en un instante:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #include <stdio.h>


    main ()

    {

      FILE *fich;

      fich=fopen("test.c","r");

      fseek(fich, 0L, SEEK_END);
      printf("test.c ocupa %d bytes", ftell(fich));
      fclose(fich);

    }
    Leer artículo completo
  • Tamaño de archivo para seres humanos (PHP,C++ y C)

    Cuando obtenemos un tamaño de archivo, lo obtendremos en bytes, aunque está bien tener esa información en otras unidades, sobre todo, para expresar las cantidades al usuario de una forma más amigable.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    function human_size ($tam) {
            $i = 0;
            $unids=array("bytes","Kb","Mb","Gb","Tb","Pb","Eb","Zb","Yb","Bb");
            while ($tam>1024) {
                    $tam = $tam /1024;
                    $i++;
            }
            return number_format($tam,2,",",".").
    Leer artículo completo