0Pricing
C# Academy · Lección

Crear DateTimes

Now, Today y fechas específicas

Crear DateTimes es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.

Conozca DateTime

En C#, la estructura DateTime representa un instante concreto, incluida tanto la fecha como la hora del día.

Se encuentra en el espacio de nombres System, por lo que está disponible en todos los programas. La utilizará para cumpleaños, marcas de tiempo, fechas límite y mucho más.

Un valor DateTime contiene el año, el mes, el día, la hora, los minutos, los segundos e incluso fracciones de segundo.

DateTime.Now

La forma más sencilla de obtener la fecha y hora actuales es DateTime.Now. Lee el reloj local de su equipo.

Cada vez que lo llama, obtiene una instantánea nueva del momento. Como el resultado depende de cuándo se ejecuta, el valor impreso cambia cada vez.

using System;

class Program
{
    static void Main()
    {
        DateTime now = DateTime.Now;
        Console.WriteLine(now);
    }
}

La fecha de hoy

Si solo le interesa la fecha y no la hora, utilice DateTime.Today. Devuelve la medianoche (00:00:00) del día actual.

Es útil al comparar días, ya que la parte de la hora se establece en cero.

using System;

class Program
{
    static void Main()
    {
        DateTime today = DateTime.Today;
        Console.WriteLine(today.Year);
    }
}

Hora UTC

Los equipos de todo el mundo comparten la UTC (hora universal coordinada). Utilice DateTime.UtcNow para obtener la hora actual en UTC, sin depender de ninguna zona horaria local.

La UTC es la opción segura para los servidores y para almacenar marcas de tiempo que leerán distintas regiones.

using System;

class Program
{
    static void Main()
    {
        DateTime utc = DateTime.UtcNow;
        Console.WriteLine(utc.Kind);
    }
}

Crear una fecha específica

Para crear una fecha exacta, utilice el constructor new DateTime(year, month, day). La parte de la hora se establece de forma predeterminada en medianoche.

Es perfecto para fechas fijas, como un día festivo o un día de lanzamiento. Como el valor es fijo, el resultado es completamente predecible.

using System;

class Program
{
    static void Main()
    {
        DateTime launch = new DateTime(2024, 1, 15);
        Console.WriteLine(launch.ToString("yyyy-MM-dd"));
    }
}

Añadir la hora del día

Un constructor más largo le permite establecer las horas, los minutos y los segundos: new DateTime(year, month, day, hour, minute, second).

Las horas utilizan el reloj de 24 horas, por lo que 14 significa las 2 p. m. Esto le proporciona una marca de tiempo completa con precisión de un segundo.

using System;

class Program
{
    static void Main()
    {
        DateTime meeting = new DateTime(2024, 3, 5, 14, 30, 0);
        Console.WriteLine(meeting);
    }
}

Leer las partes

Una vez que tiene un DateTime, puede leer cada componente mediante propiedades: Year, Month, Day, Hour, Minute y Second.

Estas propiedades devuelven enteros simples, por lo que son fáciles de imprimir o comparar.

using System;

class Program
{
    static void Main()
    {
        DateTime d = new DateTime(2024, 3, 5, 14, 30, 0);
        Console.WriteLine(d.Month);
        Console.WriteLine(d.Hour);
    }
}

Día de la semana

La propiedad DayOfWeek indica en qué día de la semana cae una fecha. Devuelve un valor de la enumeración DayOfWeek, como Monday o Saturday.

También existe DayOfYear, un entero del 1 al 366.

using System;

class Program
{
    static void Main()
    {
        DateTime d = new DateTime(2024, 1, 1);
        Console.WriteLine(d.DayOfWeek);
    }
}

Valores mínimo y máximo

DateTime tiene dos constantes especiales. DateTime.MinValue es el 1 de enero del año 1, y DateTime.MaxValue es el 31 de diciembre del año 9999.

Son útiles como valores predeterminados o marcadores cuando todavía no se ha establecido una fecha real.

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine(DateTime.MinValue);
        Console.WriteLine(DateTime.MaxValue.Year);
    }
}

Analizar una cadena de fecha

El texto introducido por un usuario o procedente de un archivo suele contener una fecha. DateTime.Parse convierte una cadena en un valor DateTime.

Si el texto no es una fecha válida, Parse lanza un error. Para gestionar la situación de forma más segura, puede utilizar DateTime.TryParse, que devuelve true o false en lugar de provocar un fallo.

using System;

class Program
{
    static void Main()
    {
        DateTime d = DateTime.Parse("2024-07-04");
        Console.WriteLine(d.Year);
    }
}

Análisis seguro con TryParse

DateTime.TryParse evita las excepciones. Recibe el texto y una variable out, y devuelve true si la operación tiene éxito.

Este patrón es la forma recomendada de gestionar entradas inciertas, como un valor escrito por un usuario.

using System;

class Program
{
    static void Main()
    {
        bool ok = DateTime.TryParse("not a date", out DateTime result);
        Console.WriteLine(ok);
    }
}

Comprobación rápida

Quiere únicamente la fecha actual, sin el componente de hora (medianoche). ¿Qué llamada debería utilizar?

Repaso

Ha aprendido a crear valores DateTime. Utilice DateTime.Now para obtener el instante local, DateTime.Today para obtener la medianoche del día actual y DateTime.UtcNow para obtener la hora universal.

Cree fechas fijas con new DateTime(...), lea sus componentes mediante Year, Month y DayOfWeek, y convierta texto con Parse o con la alternativa más segura, TryParse.

Preguntas frecuentes

¿La lección «Crear DateTimes» es gratis?

Sí — el texto completo de «Crear DateTimes» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Crear DateTimes»?

Now, Today y fechas específicas Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Crear DateTimes»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Crear DateTimes
  2. Formatear fechas
  3. TimeSpan y duraciones
  4. Aritmética de fechas
← Volver a C# Academy