Análise rápida
Ao navegar pelas pastas, o Windows Explorer não exibe datas fora de um intervalo específico:
The MS-DOS date format can represent only dates between 1/1/1980 and 12/31/2107.
Source: FileTimeToDosDateTime function
Isso pode ser confirmado pela configuração manual da data:
Minhasuposiçãoéqueessecomportamentoestárelacionadoàcompatibilidadecomversõesanteriores.Quando
Bits | Description
-------------------------------------------------------
0–4 | Day (1-31)
5–8 | Month (1 = January, 2 = February, etc.)
9-15 | Year offset from 1980 (0 = 1980, 1 = 1981, etc.)
Para salvar bits, o ano não é armazenado como um número inteiro; um deslocamento é usado em vez disso. Como existem 7 bits, isso significa 2^7 = 128
de valores possíveis, ou seja, 1980-2107.
Quanto ao NTFS, isso é o que a documentação diz:
A file time is a 64-bit value that represents the number of 100-nanosecond intervals that have elapsed since 12:00 A.M. January 1, 1601 Coordinated Universal Time (UTC). The system records file times when applications create, access, and write to files.
The NTFS file system stores time values in UTC format, so they are not affected by changes in time zone or daylight saving time. The FAT file system stores time values based on the local time of the computer.
Source: File Times
Leitura adicional
Solução alternativa
Em alguns casos, você pode ignorar esse problema por meio das tags EXIF :
Odiálogodepropriedadesdoarquivopodeexibirqualquerdatasuportadapelosistemadearquivossubjacente:
O mesmo acontece com a interface da linha de comandos ao usar o comando dir
:
01/01/1601 02:23 AM 0 1-oldest.txt
01/01/1970 02:23 AM 0 2-older.txt
01/01/1980 02:23 AM 0 3-old.txt
01/01/2014 02:23 AM 0 4-current.txt
01/01/2107 02:23 AM 0 5-new.txt
01/01/9999 02:23 AM 0 6-newer.txt
Programas de terceiros, como o 7-Zip , também podem não ser afetados: