Как конвертировать миллисекунды в удобочитаемую форму?

Вместо использования sh для запуска скрипта,

попробуйте выполнить следующую команду:

bash ./array.sh
117
задан Acumenus 20 February 2014 в 19:11
поделиться

5 ответов

Ну, так как никто больше не повысился, я напишу легкий код, чтобы сделать это:

x = ms / 1000
seconds = x % 60
x /= 60
minutes = x % 60
x /= 60
hours = x % 24
x /= 24
days = x

я просто рад, что Вы остановились в дни и не спрашивали в течение многих месяцев. :)

Примечание, что в вышеупомянутом, предполагается, что / представляет целочисленное деление усечения. Если Вы будете использовать этот код на языке, где / представляет деление с плавающей точкой, необходимо будет вручную усечь результаты подразделения по мере необходимости.

222
ответ дан Greg Hewgill 20 February 2014 в 19:11
поделиться

Необходимо использовать функции даты и времени любого языка, который Вы используете, но, только для забавы вот код:

int milliseconds = someNumber;

int seconds = milliseconds / 1000;

int minutes = seconds / 60;

seconds %= 60;

int hours = minutes / 60;

minutes %= 60;

int days = hours / 24;

hours %= 24;
7
ответ дан albertein 20 February 2014 в 19:11
поделиться

Ваш выбор прост:

  1. Пишут код, чтобы сделать преобразование (т.е., для деления на milliSecondsPerDay, чтобы получить дни и использовать модуль для деления на milliSecondsPerHour, чтобы получить часы и использовать модуль, чтобы разделиться на milliSecondsPerMinute и разделиться на 1 000 в течение многих секунд. milliSecondsPerMinute = 60000, milliSecondsPerHour = 60 * milliSecondsPerMinute, milliSecondsPerDay = 24 * milliSecondsPerHour.
  2. Использование операционная стандартная программа некоторого вида. UNIX и Windows оба имеют структуры, которые можно получить от Галочки или значение типа секунд.
2
ответ дан plinth 20 February 2014 в 19:11
поделиться

Я предложил бы использовать безотносительно функций/библиотек даты/времени Ваш предпочтительный язык/платформа обеспечивает. Также строковые функции форматирования выезда, поскольку они часто обеспечивают простые способы передать дату/метки времени и произвести человекочитаемый формат строки.

2
ответ дан theraccoonbear 20 February 2014 в 19:11
поделиться

Позвольте A быть суммой миллисекунд. Затем Вы имеете:

seconds=(A/1000)%60
minutes=(A/(1000*60))%60
hours=(A/(1000*60*60))%24

и так далее (% оператор модуля).

Hope это помогает.

56
ответ дан dbr 20 February 2014 в 19:11
поделиться
  • 1
    Спасибо за Вас ответ, но я doesn' t работа. Теперь, если я проверил некоторый флажок, когда я прокручиваю список, я потерял changment, и каждый флажок неконтролируем!!! I' ll пытаются добавить также: если (isChecked) данные [положение] .setChecked (верный) еще данные [положение] .setChecked (ложь)... Как я могу сделать??? – Stefano C. 6 July 2012 в 00:21
Другие вопросы по тегам:

Похожие вопросы: