Convertir une date ISO en Windows FILETIME
Saisissez une date et heure avec Z ou un décalage et obtenez la valeur FILETIME de Windows, qui compte des pas de 100 nanosecondes depuis le 1er janvier 1601 UTC : 2025-01-01T00:00:00Z donne 133801632000000000. Utile pour Active Directory, le registre et l'analyse forensique. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Date et heure
- 2025-01-01T00:00:00Z
- Date et heure saisies
- 2025-01-01T00:00:00Z
- Date et heure UTC
- 2025-01-01T00:00:00.0000000Z
- FILETIME Windows
- 133801632000000000
Le calcul compte les intervalles de 100 nanosecondes depuis 1601-01-01T00:00:00Z et exige que vous indiquiez explicitement le fuseau avec Z ou un décalage numérique. Il repose sur une arithmétique grégorienne entière exacte, sans horloge locale ni analyseur de date de la plateforme. La réponse comprend la saisie originale, sa forme UTC normalisée à sept décimales, la chaîne FILETIME et une unité clairement indiquée.
Comprenez l'époque et l'unité de Windows FILETIME
Windows FILETIME est un compteur entier dont le point zéro correspond à minuit UTC le 1er janvier 1601. Chaque incrément vaut 100 nanosecondes : dix millions forment une seconde et 864 milliards une journée. Cette époque et cette résolution diffèrent d'Unix, des millisecondes JavaScript et des ticks .
NET DateTime. Renommer ou multiplier un horodatage familier peut donc donner un résultat faux.
Indiquez un fuseau ISO explicite pour un UTC déterministe
Une date et une heure ISO sans fuseau ne désignent pas un instant unique. Elles peuvent correspondre à l'heure locale d'un poste, au fuseau d'un serveur ou à une valeur dont le décalage a disparu lors d'un export. Vous devez donc fournir Z pour UTC ou un décalage tel que +05:30 ou -04:00.
Un décalage positif est soustrait pour obtenir UTC, tandis qu'un décalage négatif est ajouté. Ainsi, minuit à +02:00 correspond à 22:00 UTC la veille. Le calcul traite directement ce changement de jour et renvoie une valeur normalisée terminée par Z.
Il ne consulte jamais le fuseau de la machine, les règles d'heure d'été, la date courante, les paramètres régionaux ou l'environnement. Les décalages jusqu'à 14:00 sont acceptés. Les zones nommées comme America/New_York ne le sont pas, car elles exigent des règles historiques susceptibles d'évoluer.
Si votre source ne contient qu'une heure locale, déterminez son décalage historique exact avant la conversion.
Préservez la précision et validez les données migrées
La saisie peut contenir entre un et sept chiffres après la seconde. Les chiffres absents sont ajoutés à droite : .1 signifie un dixième de seconde, tandis que sept chiffres expriment toute la résolution de 100 nanosecondes. Une précision supérieure est refusée plutôt qu'arrondie ou tronquée, car ces opérations pourraient déplacer l'instant.
La validation écarte aussi les dates impossibles, secondes intercalaires, décalages mal formés et heures hors limites. Après application du fuseau, l'instant UTC doit se situer entre l'époque FILETIME et le dernier intervalle de 100 nanosecondes de l'an 9999. Ces règles rendent les erreurs de migration visibles.
Sans réseau, hasard, horloge système ni objet Date, une même saisie acceptée produit toujours exactement le même résultat.
Cas d’usage
Valider les migrations d'annuaires
Calculez les valeurs FILETIME des champs temporels tout en conservant un UTC normalisé vérifiable.
Analyser le Registre et les chronologies
Créez des références FILETIME connues depuis des instants ISO explicites pour les tests et enquêtes.
Questions fréquentes
Quelle est l'époque de Windows FILETIME ?
FILETIME commence à 1601-01-01T00:00:00Z et compte depuis cet instant des intervalles de 100 nanosecondes.
Pourquoi la date ISO doit-elle inclure un fuseau ?
Une date sans Z ni décalage est ambiguë. Le fuseau rend la conversion vers UTC déterministe.
Combien de chiffres fractionnaires sont acceptés ?
Jusqu'à sept chiffres sont admis, conformément à la résolution de 100 nanosecondes. Au-delà, la saisie est refusée.
Le convertisseur utilise-t-il le fuseau ou l'horloge système ?
Non. Il utilise uniquement la saisie explicite et une arithmétique grégorienne entière déterministe.
Pourquoi le résultat est-il affiché en texte plutôt qu'en nombre ?
Parce que les valeurs FILETIME actuelles dépassent ce que beaucoup de logiciels et de tableurs peuvent conserver exactement sous forme de nombre. Les garder en texte évite un arrondi silencieux avant l'enregistrement ou la transmission.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/date/iso-to-windows-filetime \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"datetime":"2025-01-01T00:00:00Z"}'const res = await fetch("https://api.kit.forhosting.com/date/iso-to-windows-filetime", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"datetime": "2025-01-01T00:00:00Z"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/iso-to-windows-filetime",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"datetime": "2025-01-01T00:00:00Z"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/iso-to-windows-filetime", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"datetime":"2025-01-01T00:00:00Z"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"datetime":"2025-01-01T00:00:00Z"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/iso-to-windows-filetime", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"datetime": "2025-01-01T00:00:00Z"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.iso_to_windows_filetime",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Convertissez une date ISO 8601 en valeur décimale Windows FILETIME utilisée par les API Windows, Active Directory, le Registre et les outils d'analyse.
Comprenez l'époque et l'unité de Windows FILETIME
Le convertisseur valide la date grégorienne, l'heure, la fraction de seconde et le fuseau, puis détermine l'instant UTC exact et mesure son écart avec l'époque FILETIME par calcul entier. windows_filetime est renvoyé comme texte décimal, car de nombreux environnements JSON ne peuvent pas représenter exactement ces grands nombres. Ce choix évite les arrondis silencieux dans les navigateurs, tableurs et applications. unit précise l'interprétation, tandis que utc_datetime fournit une forme lisible à contrôler avant le stockage ou la transmission. Chaque conversion automatisée coûte $0.002.
Préservez la précision et validez les données migrées
Utilisez windows_filetime dans une structure Windows, un attribut LDAP, un export du Registre ou une charge compatible, et utc_datetime dans les audits et tests.
Cas d'intégration
Préparer des charges pour les API Windows
Transformez une date UTC ou décalée lisible en FILETIME décimal exact attendu par une intégration Windows.
Questions techniques
Pourquoi FILETIME est-il renvoyé comme chaîne ?
Les entiers FILETIME dépassent la plage exacte de nombreux nombres JSON. Le texte décimal conserve chaque chiffre.
Quel est le coût d'une conversion ?
Chaque conversion par API coûte $0.002.