Conversor de duração ISO 8601
Leia e escreva durações ISO 8601 como PT1H30M, em segundos e em linguagem simples.
O Conversor de duração ISO 8601 funciona inteiramente no seu navegador: as durações digitadas são analisadas no seu dispositivo e nunca são enviadas.
Abrir o Conversor de duração
Sobre Conversor de duração ISO 8601
Durações ISO 8601 aparecem onde um intervalo precisa sobreviver a uma ida e volta por JSON: marcação schema.org, manifestos do Kubernetes, esquemas XML, exemplos de OpenAPI e o formato TimeSpan do .NET. A sintaxe é P[n]Y[n]M[n]DT[n]H[n]M[n]S, e o detalhe que confunde todo mundo é o M: meses antes do T, minutos depois, de modo que P1M e PT1M diferem por um fator de cerca de 43.000. Este conversor analisa a duração, monta uma a partir de texto comum e deixa explícito o que outras bibliotecas escondem: meses e anos não têm duração fixa.
Recursos
- Analisa toda a gramática, incluindo semanas, frações e negativos
- Distingue meses de minutos dos dois lados do T
- Totais em segundos, milissegundos, minutos, horas e dias
- Versão em linguagem simples da duração
- Monta uma duração ISO a partir de segundos, relógio ou sufixos
- Alterna entre a média gregoriana e os 30/365 dias
Como usar Conversor de duração ISO 8601
- Cole uma duração ISO 8601 para ler ou vá ao modo montar
- No modo montar digite segundos, um relógio ou algo como 2d 4h
- Leia os totais, os campos e a versão em palavras
- Escolha a suposição de mês se a duração tiver meses ou anos
Exemplo
Entrada
P3Y6M4DT12H30M5S
Saída
3 years, 6 months, 4 days, 12 hours, 30 minutes and 5 seconds
110,984,405 seconds (Gregorian average)
O próprio exemplo da norma, e um lembrete de que os dois M significam coisas diferentes.
Erros comuns e solução de problemas
- P1M e PT1M são tratados como a mesma coisa. — Não são: antes do T o M são meses; depois, minutos. Esquecer o T é o erro mais comum.
- Uma duração com meses dá outros segundos em outra biblioteca. — Porque um mês não tem duração fixa: umas usam 30 dias, outras 30,44 e outras o calendário real.
Perguntas frequentes
- O que significa PT1H30M?
- Uma hora e trinta minutos. O P inicia a duração, o T separa data de hora e, depois do T, o M são minutos.
- Qual a diferença entre P1M e PT1M?
- P1M é um mês e PT1M é um minuto. O T é a única coisa que os distingue, por isso não é opcional.
- Como converter uma duração ISO 8601 em segundos?
- Semanas e abaixo são exatas; meses e anos não, então é preciso supor uma duração. Aqui dá para escolher entre a média gregoriana e 30 dias.
- Onde as durações ISO 8601 são usadas?
- Em marcação schema.org, configuração de Kubernetes e Prometheus, tipos de XML Schema, exemplos de OpenAPI e o TimeSpan do .NET.
Ferramentas relacionadas
Todas as ferramentas de ArrayKit