Українська

Розробники · Unix timestamp конвертер

Негативний Unix частампи: як дати до 1970 представлені

· Як працює

Опубліковано ToolAcre · Редакція журналу

частампи час Інформатика

Подовження часу зліва від 1970 епоха в негативні значення
Головна ToolAcre векторна ілюстрація

Унікс час рахує напади 1970, але це занадто багато. Цей пост пояснює, що негативний засіб епоха, як −1 стає другим 1969, і де системи, які припускають позитивні цінності.

Дата народження з знаком мінуса — користувач, що народився в 1965 зберігають як негативне ціле, і код, який обробляє його як помилка

Запис на людину, що народжується перед 1970 може законно містити негативний одноразовий одноразовий час. Вводити всі провідні знаки мінусів перетворює вибір представництва в помилки з даними. ToolAcre’s parser приймає додатковий знак, і `fromEpoch` позначається на інтерпретованій мілісекунді значення нижче нуля, як `beforeEpoch` а не лікуючи його недійсним.

Після того, як дисплей додає замітку про те, що миттєвий претендує на Unix epoch. Це сильніше, ніж мовчки, що дає дату, оскільки він зберігає незвичайний знак, видимий до рецензента. Якщо передстрім-шма забороне негативні наслідки, відмова належить до тієї схеми або міграції, не до арифметичного, що карти нараховує з обох сторін нуля.

Зареєстровані цілі і епоха — чому time_t підписано, і що −1 і −86400 відповідати

Зеро 1970-01-01T00:00:00.000ZТести репозиторій доведено, що −1 другий є негайно передаючим, `1969-12-31T23:59:59.000Z`. Точно, −86,400 секунди один фіксований POSIX день до нуля. Зареєстрований арифмететик робить вісь безперервним замість того, щоб мати другу епоху для старших записів.

Вказаний атрибут підписаний накопичувач до `time_t`, але цей код не встановлює історію дизайну або тип, який використовується на кожній платформі. Його вузькі докази досить: JavaScript кількість може бути негативним, виявлення використовує абсолютну величину, а дата може форматувати результат. Опишіть декларований тип виробництва окремо від прийнятого введення перетворювача.

Зареєстрований епоха арифметичне навколо нуля, не претендує на те, що кожен раз

Негативні значення зберігають однакову диференцію, як позитивні. `−1000` секунди 1,000 секунд до епоху, в той час як `−1000` мілісекунди вказує лише один другий до нього. Автоматичне виявлення лікує як секунди, так як їх величина нижче 1011, так коротка pre-epoch мілісекундна кількість вимагає чіткого відбору мілісекундів.

Це бетонна недостатність кріплень-знижкових фольклорів. Розробник, який бачить знак мінусів і чотири цифри, не можуть заважати блок з зовнішнього вигляду. Використовуйте вихідний контракт, оберіть оберіть та перевірте блокнот. ToolAcre’s значення правило є типовим для типових даних, не заміною метаданих на історичні значення, що знаходяться поблизу до 1970.

Де не вдалося негативних значень — системи, які використовують −1 як відправник, не позначений зберігання, дата-підбирачі, які затискають і мови, які відхиляють їх

Зовні конвертер, `−1` іноді зарезервований як відсутній рядок, і не відкладений стовпчик не може зберігати будь-який негативний момент. Ці можливості, але репозиторій не можуть засвідчити, як конкретна база даних, дата-підбирач або мовні походи. Тестувати фактичний край перед переміщенням архівних дат через нього.

Корисне зонування містить три значення: null або документований відсутній маркер, −1і чітко старше дати. У разі виникнення −1 зникає, коли постара вартість виживає, неускладнена обробка відправлених; якщо всі негативні речовини не здаються, невірно-інспекційне визначення. Не «фіксувати» симптом, додавши 1970 роки або прийняття абсолютного значення, оскільки обидва створюють різні миттєві моменти.

Перетворено приклад: перетворення −14182940 — арифметичне до липня 1969 дата в UTC і в місцевій зоні заходу Грінвіча

До −14,182,940 секунди, запустіть в епоху і перемістіть назад 164 завершити 86,400-секундні дні, залишаючи 13,340 час. Залишок 3 час, 42 хвилини 20 час. В результаті UTC читання `1969-07-20T20:17:40.000Z`, миттєвий вибір тут спеціально для цієї статті.

Місцеве читання захід UTC може показати раніше час роботи з стелями або навіть іншу дату, але його точний результат залежить від зони браузера і правилах інтелла. Прочитати її з панелі, а не публікувати універсальну відповідь. Фіксована перевірка - це ISO ряд; локальний ряд - це екологічна анотація, на якій однаково негативний показник.

Перетворено приклад: перетворення −14,182,940 з в'єрі UTC арифметизм

ToolAcre перевіряє його перекладане значення на ±8.64×1015 мілісекунд, дата- діапазон, зазначений у джерелі. Доведено перетворення −2,208,988,800 до `1900-01-01T00:00:00.000Z`. Ті факти показують, що маршрут доходить до 1970 без нарахування, що кожна система зберігання може переносити однаковий діапазон.

Підписатись 32-розрядне поле має вузьке математичне інтервал, ніж JavaScript Дата, але конвертер не перевіряє ширину поля при введенні номера. Забезпечити вихідний тип в аудиторській фірмі. Успішне перетворення браузера демонструє унікальність тут, небезпечне цілодобове оновлення через прошивку, SQL стовпчики або бінарні протоколи в іншому місці.

Відомий діапазон дати конвертера; зовнішній 32- обмеження на зберігання

Перетворення кількості в JavaScript Дата не реконструювати цивільний календар фактично друкується в кожному місці століття тому. Реалізація використовує модель дати платформи та повертає ISO представництво; в ньому немає історично-календарного селекціонера, локального архіву або документального джерела для календарних реформ. Ці вимоги не мають намірів.

Для сучасних записів програмного забезпечення, пролептичним апаратом, що є обов'язковим. Для генеології, правової історії або архівної транскриптації, збереження початкової письмової дати та її календарного контексту, що знаходиться на будь-якому місці. Зручний сортовий номер не повинен стерти невизначеність, що перетворення не може вирішити.

Календар-історичні вимоги поза цими даними конвертера

Негативний напрямок на вісь епоха, не категорія помилок. ToolAcre в залежності від розміру, і зафіксує результат, як і раніше епоху. Ця поведінка дозволяє рецензенту відрізняти законний старий миттєвий від відправника або не відзначається збій в іншому місці.

При перевірці до1970 дані, стан одиниці, початковий тип і неточні конвенції перед перекладом знака. Далі порівнювати ISO результат з відомим записом. Знак, який є значущим арифметом, околиця визначає, чи призначений виробник, який арифметичний або використовується однаковий номер, як контрольне значення.