Это очень старый вопрос, и есть аналогичное тем, чтобы это здесь и здесь и так далее. У меня есть:
Используя эти целые числа, я хочу получить время unix (секунды с 1970 года. 01. 01.). Но, наконец, я хочу снова целое число. Как я могу это сделать?
Я могу использовать только STL и QT (не Boost). Я знаю, что есть QDateTime, который может решить это, но я до сих пор не знаю, как это сделать.
EDIT1: Я попробовал это, но, похоже, что-то пошло не так:
const WCCIL::QDate dd(/*fill it*/);
const WCCIL::QTime tt(/*fill it*/);
WCCIL::QDateTime ddtt( dd, tt); // error, no constructor
ddtt.toUTC();
Первая ссылка, которую вы опубликовали (C++ Как я могу конвертировать дату в формате year-month-day в формат unix epoch?) Содержит ответ, который вы хотите. Вы должны использовать tm
struct с mktime()
. Для получения дополнительной информации см. mktime()
страницу mktime()
.