Convertir ticks de .NET a fecha y hora ISO
El valor de ticks 638712864000000000 corresponde a la medianoche del 1 de enero de 2025 en UTC. Pegue cualquier recuento de pasos de 100 nanosegundos desde el inicio del año 1 y obtenga la fecha y la hora completas, también por separado. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Ticks
- 638712864000000000
- Fecha y hora ISO
- 2025-01-01T00:00:00.0000000Z
- Fecha
- 2025-01-01
- Tiempo
- 00:00:00.0000000Z
Convierta un valor de ticks de DateTime de . NET en una fecha y hora ISO inequívoca en UTC, sin depender de la zona horaria local ni del analizador de fechas del equipo. El conversor interpreta la entrada como intervalos de 100 nanosegundos desde la medianoche del 1 de enero del año 1 en el calendario gregoriano proléptico. Devuelve los ticks normalizados, una fecha y hora ISO completa con siete cifras decimales, y campos separados para la fecha y la hora. Así puede revisar bases de datos antiguas, registros y cargas de integración sin perder precisión.
Comprenda qué representa un tick de .NET
Un tick de DateTime de . NET equivale a 100 nanosegundos: diez millones forman un segundo y 864 mil millones forman un día. Su origen es 0001-01-01 a las 00:00:00, no la época Unix utilizada por muchas otras marcas temporales.
Este conversor separa el entero exacto en días gregorianos completos y el resto del día. Después determina año, mes y día conforme a las reglas de años bisiestos de DateTime. El resultado termina en Z porque el cálculo se presenta de forma determinista en UTC.
Los siete dígitos posteriores al punto conservan toda la resolución, sin redondearla a milisegundos. Se admiten ceros iniciales; la respuesta los elimina en el campo normalizado para facilitar comparaciones y almacenamiento coherente.
Convierta valores sin sorpresas de zona horaria
El cálculo no consulta el reloj, la configuración regional, la zona horaria, las reglas de horario de verano ni un analizador de fechas incorporado. Por ello, un valor archivado produce los mismos componentes en un navegador, un servidor y una estación de trabajo situados en regiones distintas. La Z final expresa la interpretación UTC solicitada; no procede de metadatos ocultos de DateTime Kind, porque un recuento de ticks aislado no contiene esa información.
Si la aplicación de origen trataba DateTime como local o sin especificar, determine primero la zona prevista antes de usar el resultado como instante absoluto. El conversor no aplica deliberadamente ningún ajuste local a UTC: asigna directamente el recuento numérico desde la época del año 1. Esta distinción evita que una conversión aparentemente útil altere datos históricos.
Los días bisiestos, los cambios de siglo, la medianoche y el máximo de DateTime siguen reglas gregorianas estables.
Valide e integre la fecha ISO obtenida
El intervalo admitido va de 0 a 3155378975999999999, igual que DateTime desde el primer instante del año 1 hasta el último intervalo de 100 nanosegundos del año 9999. La entrada solo puede contener dígitos decimales. Se rechazan valores negativos, exponentes, puntos decimales, signos, separadores y cantidades superiores al máximo, en vez de adivinarlos o redondearlos.
Este contrato estricto permite que los registros defectuosos fallen de forma visible durante una migración. Algunas bases de datos y bibliotecas de JavaScript solo conservan milisegundos o microsegundos; compruebe el destino si las últimas cifras importan. Puede emplear date como clave de partición y time para conservar por separado la parte diaria.
Qué puede hacer con ella
Revisar filas de bases de datos antiguas
Transforme una columna opaca de ticks en fechas UTC legibles mientras comprueba registros durante una migración.
Normalizar cargas de integración
Convierta cadenas DateTime en fechas ISO estables antes de enviarlas a sistemas que utilizan marcas temporales textuales.
Depurar valores .NET serializados
Confirme el instante de calendario representado por ticks en registros, cachés o estados exportados de aplicaciones.
Preguntas frecuentes
¿Cuál es la época de los ticks de DateTime de .NET?
El recuento comienza en 0001-01-01T00:00:00.0000000 dentro del calendario gregoriano proléptico.
¿Un valor de ticks incluye información de zona horaria?
No. El recuento aislado no contiene DateTime Kind ni un desfase local. Esta capacidad calcula y etiqueta el resultado en UTC sin aplicar desfases.
¿Qué precisión se conserva?
Se mantienen las siete cifras decimales del segundo, que corresponden a la resolución de 100 nanosegundos de un tick.
¿Qué valores se admiten?
Se aceptan enteros decimales de 0 a 3155378975999999999. Se rechazan signos, fracciones, exponentes y valores fuera del intervalo.
¿Cuánto dura un tick de .NET?
Un tick equivale a 100 nanosegundos. Diez millones de ticks forman un segundo y 864 mil millones forman un día, contados desde la medianoche del inicio del año 1 y no desde la época Unix.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/date/dotnet-ticks-to-date \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"ticks":"638712864000000000"}'const res = await fetch("https://api.kit.forhosting.com/date/dotnet-ticks-to-date", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"ticks": "638712864000000000"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/dotnet-ticks-to-date",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"ticks": "638712864000000000"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/dotnet-ticks-to-date", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"ticks":"638712864000000000"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"ticks":"638712864000000000"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/dotnet-ticks-to-date", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"ticks": "638712864000000000"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.dotnet_ticks_to_date",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Comprenda qué representa un tick de .NET
Envíe los ticks como texto decimal para evitar la pérdida de precisión que sufren los números JSON grandes.
Valide e integre la fecha ISO obtenida
Use iso_datetime en exportaciones, auditorías o cargas API que admitan siete decimales.
Preguntas técnicas
¿Por qué deben enviarse los ticks como texto?
Los valores grandes superan el intervalo entero exacto de muchas implementaciones JSON. El texto decimal conserva cada cifra.
¿Cuánto cuesta una conversión mediante API?
Cada conversión cuesta $0.002.