Pergunta

Em questão Procurando por conversor Boa CTIME / Unixtime Pedi para um bom web baseado CTIME (segundos desde 01 de janeiro de 1970) conversor de tempo. (Normalmente a 32 bit inteiro assinado).

Eu precisava de uma ferramenta onde eu poderia entrar em uma data, e obter o equivalente CTIME. Eu era capaz de encontrar um, uma vez que eu percebi que Unixtime é o outro nome para o formato. Google era meu amigo quando cheguei lá.

Agora, que tal um conversor FILETIME, que é mais comumente usado como 64 bit inteiro assinado, representando unidades de 100 nanossegundos desde 1 de janeiro de 1601. (O Active Directory usa internamente para armazenamento de tempo).

Provavelmente há alguma palavra-chave melhor para procurar que iria encontrá-lo para mim. Eu tenho uma ferramenta que vai me mostrar a hora atual em FILETIME, e eu posso fazer a matemática em outros lugares com a mão, mas não é bem o que eu estou olhando de facilidade de abordagem uso.

Eu tenho uma função que pode usá-lo no código, mas não um invólucro para fazer facilmente utilizável em um formato rápido. tempo de Java formatador apoios, mas eu novamente estou procurando uma versão muito bem embrulhado disso.

Foi útil?

Solução

Esta ferramenta irá converter todos os tipos de tempo online.

Outras dicas

No Windows, o tempo base é 1601/01/01. O FileTime também é gravada utilizando 100 nanosegundos como a medida. Usando VBA isso vai te dentro de alguns segundos de qualquer maneira.

(The -4 é a sua UTC atual Offset) EST é geralmente -5 mas desde que nossos governos não podem ficar juntos e padronizar os switchovers DST ou se livrar de DST por completo, você vai ter que mudar isso para o seu fuso horário .

O 600000000 é a conversão de 100 nanossegundos para minutos para overflows a evitar.

Além disso, reconhecem que este é VBA, então passar o seu valor duplo em formato de notação.

Public Function ConvertFileTime(ByVal d As Double) As Date
    ConvertFileTime = DateAdd("n", (d / 600000000) + (60 * -4), #1/1/1601#)
End Function

Exemplo:

ConvertFileTime (1.2944684916706E + 17)

Isso deve retornar 15 março de 2011 13:48

Windows tem um built-in ferramenta de linha de comando que irá converter um FILETIME o Windows em um formato legível humana (ver ferramentas de tempo do Windows serviços ).

emitindo o seguinte comando:

w32tm.exe /ntte 132015260350000000

produz esta saída:

152795 10:33:55.0000000 - 05.05.2019 12:33:55
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top