Blog de conocimiento gratuito: linux, programación, open source, bases de datos, android, frameworks, web e informática en general.
En el post de hoy vamos a hablar sobre el almacenamiento de fechas y horas en las bases de datos y cómo trabajar con ellas al usarlas en nuestros sistemas.
Te diré algunos consejos desde mi experiencia para que puedas guardar y recuperar timestamps a cualquier base de datos y en cualquier lenguaje de programación.
En el tutorial de hoy vamos a trabajar con C y marcas de tiempo o timestamps para obtener la diferencia entre una fecha y hora y otra.
Te mostraré ejemplos para saber la diferencia que hay entre un timestamp y otro, logrando así calcular el tiempo transcurrido entre 2 marcas de tiempo.
Por otro lado veremos cómo formatear el tiempo transcurrido en C y obtener la diferencia en horas, minutos y segundos.
En este post te mostraré cómo convertir una cadena de fecha a un objeto de tipo time.Time en Golang, es decir, parsear o traducir la fecha.
Al crear un objeto time según una fecha en Go vamos a poder usar las operaciones para sumar y restar fechas o en general manipular el tiempo (dentro de la variable).
Veamos entonces cómo parsear una fecha en Go.
En este post te voy a mostrar a obtener la fecha actual en C, además de formatearla (para extraer el año, mes, día, etcétera). Las funciones que vamos a ver son: time, localtime y strftime.
Con la función time
obtenemos el tiempo (como entero) actual. Usando localtime
obtenemos un struct
de tipo tm
, necesario para más tarde formatear la fecha con strftime
.
Aunque suena complicado al inicio, la verdad es que es muy sencillo.
En nuestras apps siempre necesitaremos obtener la fecha actual. Por ejemplo, si tenemos un sistema de ventas necesitamos guardar la fecha y hora en la que determinada venta fue realizada.
Hoy veremos cómo formatear y obtener la fecha actual en Golang. Lo que obtendremos será algo como lo de abajo:
2018-05-16T12:52:54
Vamos allá
Para obtener la fecha necesitamos el paquete time, incluido por defecto. Y para formatearla, utilizaremos fmt.
Lo que haremos con fmt será formatear la fecha llamando a Sprintf que formatea una cadena pero no la imprime (al contrario de Printf), sino que la devuelve.
Al ejecutarlo se muestra esta salida, dependiendo de la hora y fecha en la que ejecutemos el programa: