ПБ
14 января 2019 г. 12:56

Qt, QDateTime

Ребята, привет. Помогите с решением простейшей задачи.

QDateTime from = QDateTime::fromString("31 Jan 2019 00:00:00", "dd MMM yyyy hh:mm:ss");
QString result = from.toString("dd-MM-yyyy hh:mm:ss");
qDebug() << result;

Выводится "", не понимаю, где ошибся.

Возврат 10% от суммы заказа отеля на Booking
Возврат 10% от суммы заказа отеля на Booking
Предлагаем ссылку с 10% возвратом от суммы заказа при бронировании отеля через Booking
11

Добрый день.

Ну если честно, то здесь нет ошибки.

Я сделал тестовый проект. Скопировал туда код и сработало как надо.

#include <QCoreApplication>

#include <QDateTime>
#include <QString>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QDateTime from = QDateTime::fromString("31 Jan 2019 00:00:00", "dd MMM yyyy hh:mm:ss");
    QString result = from.toString("dd-MM-yyyy hh:mm:ss");
    qDebug() << result;

    return a.exec();
}
0
ПБ

И что мне делать? Мне же нужно получить 31-01-2019 00:00:00, а я получаю пустую строку.

0

повторить тестовый проект, который я сделал. Просто создать консольное приложение и скопировать мой код в main.cpp. Если также не будет работать, то писать на багтрекер Qt, вполне возможно, что это баг.

Если нормально выводится, то как минимум проект полностью очистить и пересобрать.

Также поменять версию Qt.

0

а не может быть проблемы с локализацией?

0

я как-то не подумал об этом... Может быть действительно Топик-Стартер устаовил свою локаль в рамках проекта...

Тогда тестовый проект должен показать это.

0
ПБ

Вот так тоже пустая строка выводится.

QLocale setLocale  = QLocale(QLocale::English, QLocale::UnitedStates);
QDateTime from = QDateTime::fromString("25 Feb 2018 00:00:00", "dd MMM yyyy hh:mm:ss");
QString result = setLocale.toString(from, "dd-MM-yyyy hh:mm:ss");
qDebug() << result;
0
#include <QCoreApplication>
#include <QDateTime>
#include <QLocale>
#include <QtDebug>

int main(int argc, char *argv[])
{
  QCoreApplication a(argc, argv);

  QLocale locale("english");
  QDateTime dt = locale.toDateTime("31 Jan 2019 00:00:00", "dd MMM yyyy hh:mm:ss");
  qDebug() << dt.toString();

  return a.exec();
}

Вот так попробуйте

1

Здесь вы хоть и определили другую локализацию, но переменную from создаёте без её учёта.

0
ПБ
QLocale setLocale  = QLocale(QLocale::English, QLocale::UnitedStates);
QDateTime from = setLocale.toDateTime("25 Feb 2018 00:00:00", "dd MMM yyyy hh:mm:ss");
QString result = from.toString("dd-MM-yyyy hh:mm:ss");
qDebug() << result;
1

Всё получилось?

0
0

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
SZ
24 июня 2019 г. 17:49
Serg Zhi

C++ - Тест 003. Условия и циклы

  • Результат:78баллов,
  • Очки рейтинга2
АС
24 июня 2019 г. 8:03
Александр Спиридонов

C++ - Тест 001. Первая программа и типы данных

  • Результат:53баллов,
  • Очки рейтинга-4
БА
23 июня 2019 г. 13:52
Борис Артамонов

C++ - Тест 003. Условия и циклы

  • Результат:35баллов,
  • Очки рейтинга-10
Последние комментарии
24 июня 2019 г. 10:23
Евгений Легоцкой

Хорошо, ну будут проблемы помимо того, что касается статей, то не стесняйтесь задавать вопросы на форуме.
МБ
24 июня 2019 г. 10:21
Михаил Булатов

Извиняюсь, все работает(из-за невнимательности).
24 июня 2019 г. 9:52
Евгений Легоцкой

Придётся делать ещё сигнал в дочернем qml и пробрасывать через коннекты и обработчики. А вообще нужно смотреть конкретный код и что вы пытаетесь сделать. Так что лучше будет, если вы зад...
21 июня 2019 г. 8:31
Ruslan Polupan

Вот моя строка по которой все отлично сработало %cqtdeployer% -bin c:/CentralMposKeys/CentalMposKeys.exe -qmake c:/Qt/5.12.2/mingw73_64/bin/qmake.exe
21 июня 2019 г. 8:24
Андрей Янкович

Возможно кому то пригодится сqtdeployer для windows работает точно так же как и для Linux разница лишь в команде запуска Linux: cqtdeployer Windows: %cqtdeployer...
Сейчас обсуждают на форуме
24 июня 2019 г. 14:36
Михаиллл

Нашел проект подключения к вебсокету.Но по моему адресу не могу подключиться.Нужно ли для этого использовать библиотеки?Вы не знаете адрес вебсокета, на котором можно проверить с...
24 июня 2019 г. 14:07
Евгений Легоцкой

Я пока даже не знаю, а какой код самого подключения? использовали ожидание на подключение? Так делали? socket->connectToServer("market");if (socket->waitForConnected(1000)) ...
24 июня 2019 г. 13:19
IscanderChe

// widget.cpp#include "widget.h"#include <QTableView>#include <QVBoxLayout>#include "checkboxdelegate.h"#include "comboboxdelegate.h"#include "mytableview.h"#include <QSqlD...
24 июня 2019 г. 11:16
BlinCT

Хорошо, с этим понятно. Вот есть такой набор каких то кнопок. Цифры отображают в каком порядке должен менятся фокус.1. Как правильнее сделать отображение активного обьекта...
e
24 июня 2019 г. 10:58
evgenm27

Спасибо за ответ, буду пробовать
Ищу работу?
10,000.00 руб. - 15,000.00 руб.
Нужен помощник для создания API.
Moscow, Moscow, Russia
25,000.00 руб. - 30,000.00 руб.
Разработчик Qt/C++
Barnaul, Altai Krai, Russia

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы

EVILEG
О нас
Услуги
Присоединяйтесь к нам
© EVILEG 2015-2019
Рекомендует хостинг TIMEWEB