Žádné nahrávání, 100% lokálně, bez účtu

Převodník délky ISO 8601

Zadejte délku ISO 8601 pro její rozklad a převod na sekundy.

Jak Převodník délky ISO 8601 funguje

Konvertor doby trvání ISO 8601 parsuje a převádí doby trvání zapsané ve formátu ISO 8601 (například P1Y2M10DT4H30M) na čitelný rozpis let, měsíců, dní, hodin, minut a sekund a vypočítává také celkový počet sekund pro časové složky. Konverze probíhá výhradně ve vašem prohlížeči; nic, co zadáváte, se neodesílá na žádný server a nástroj funguje offline, jakmile je stránka načtena.

Řetězce doby trvání ISO 8601 začínají 'P' (pro Period), následované datovými složkami (Y pro roky, M pro měsíce, W pro týdny, D pro dny) a volitelně oddělovačem 'T' následovaným časovými složkami (H pro hodiny, M pro minuty, S pro sekundy). Týdny (W) jsou speciálním případem: jsou-li přítomny, nesmí se v řetězci vyskytovat žádné jiné datové složky. Výstup celkového počtu sekund pokrývá pouze deterministickou časovou část (hodiny, minuty, sekundy), protože měsíce a roky mají proměnnou délku ve dnech a bez referenčního data je nelze převést na sekundy.

Převodník délky ISO 8601: návod krok za krokem

  1. Zadejte nebo vložte řetězec doby trvání ISO 8601 do vstupního pole (například P3Y6M4DT12H30M5S).
  2. Přečtěte si rozpis složek: roky, měsíce, týdny, dny, hodiny, minuty, sekundy.
  3. Zkontrolujte hodnotu celkového počtu sekund pro časovou část (pouze složky H/M/S).
  4. Alternativně vyplňte jednotlivá pole složek a řetězec ISO se vám vygeneruje.

Časté případy použití

  • Vývojář ladící odpověď API vracející doby trvání ve formátu ISO 8601 potřebuje ověřit parsované hodnoty.
  • Technický autor dokumentující systém přijímající řetězce doby trvání ISO chce ukázat, co každá složka znamená.
  • Datový analytik potřebuje převést sadu hodnot doby trvání ISO z exportu databáze na celkové sekundy pro statistickou analýzu.
  • Vývojář generující data kalendáře nebo plánování potřebuje sestavit platný řetězec doby trvání ISO 8601 z jednotlivých hodnot časových složek.

Často kladené otázky

Co znamená každé písmeno v řetězci doby trvání ISO 8601?

P označuje začátek periody. Y = roky, M před oddělovačem T = měsíce, W = týdny, D = dny. Za oddělovačem T: H = hodiny, M = minuty, S = sekundy. Řetězec P1Y2M10DT4H30M znamená 1 rok, 2 měsíce, 10 dní, 4 hodiny a 30 minut.

Proč nástroj může převést na celkové sekundy pouze hodiny, minuty a sekundy, nikoli měsíce a roky?

Měsíce mají 28 až 31 dní a roky mají 365 nebo 366 dní. Bez referenčního počátečního data neexistuje jediný správný počet sekund pro 'jeden měsíc'. Hodiny, minuty a sekundy mají pevnou délku a převádí se deterministicky. Pro získání celkového počtu sekund pro dobu trvání zahrnující měsíce nebo roky použijte nástroj pro přidávání dat s konkrétním počátečním datem a vypočítejte rozdíl dní.

Jaký je rozdíl mezi PT1H30M a P0Y0M0DT1H30M?

Sémanticky jsou identické. Obě představují dobu trvání 1 hodiny a 30 minut. ISO 8601 umožňuje vynechat nulové složky, takže PT1H30M je kompaktní forma a P0Y0M0DT1H30M je explicitní forma. Obě jsou platné.

Může řetězec doby trvání obsahovat týdny vedle dní?

Ne. Když je v době trvání ISO 8601 použit designátor W (týdny), standard zakazuje další datové designátory (Y, M, D) ve stejném řetězci. Doba trvání pouze v týdnech vypadá jako P3W, což znamená přesně 3 týdny.

Je řetězec doby trvání ISO, který zadáváte, uložený nebo odeslaný někam?

Ne. Parsování je čistá lokální manipulace s řetězcem bez externích závislostí. Řetězec doby trvání, který zadáváte, zůstává v kartě prohlížeče a není zaznamenán, přenesen ani uložen do cache po dobu relace.

Jsou negativní doby trvání platné v ISO 8601?

Jádro standardu ISO 8601 nedefinuje negativní doby trvání. Některé rozšířené implementace umožňují úvodní minus (např. -P1D znamená 'minus jeden den'). Tento nástroj parsuje standardní nenegativní doby trvání; pokud váš případ použití vyžaduje negativní doby trvání, ověřte si konvenci konkrétního API nebo systému, se kterým pracujete.