Je rencontre des problèmes avec un problème apparemment très simple: je souhaite obtenir un QDateTime à partir d'un QString contenant un horodatage. J'ai reçu l'horodatage de PostgreSQL, mais ça n'a pas d'importance. Voici le code qui ne fonctionne pas:Conversion de QString contenant l'horodatage PostgreSQL en QDateTime
QString timestamp = "2010-10-09 19:21:46+02:00";
QString format = "YYYY-MM-DD HH:MM:SSTZD";
QDateTime dt = QDateTime::fromString(timestamp, format);
qDebug() << dt.toString(); // outputs empty string
Il doit y avoir quelque chose de très évident qui me manque. Merci!
Où avez-vous trouvé les informations de format "TZD" dans le fromString, il n'existe pas. Rien ne dit que QDateTime peut analyser la partie +2: 00 de votre chaîne de temps –
"YYYY" doit être "aaaa", "DD" -> "jj", "MM: SS" -> "mm: ss". –
J'ai obtenu l'information TZD de [ici] (http://doc.trolltech.com/latest/qt.html#DateFormat-enum), mais je l'ai mal lu évidemment parce que les caractères de format sont spécifiés dans [QDateTime :: fromString()] (http://doc.trolltech.com/latest/qdatetime.html#fromString-2) documentation. Vos deux commentaires combinés m'ont conduit à la réponse, donc si vous ajoutez une réponse ci-dessous, je l'accepterai. –