#include <QCoreApplication>
#include <QDateTime>
#include <stdlib.h>
#include <iostream>
// helper functions
QString getTimezoneDiff( QDateTime dt );
int main(int argc,char *argv[])
{
QCoreApplication app(argc,argv);
QDateTime localDate = QDateTime::fromString("2009-07-11 16:53:00","yyyy-MM-dd hh:mm:ss");
QString diffStr;
diffStr = getTimezoneDiff( localDate );
printf ("Local Date: %s/r/n",localDate.toString().tolatin1().data() );
//printf ("UTC Date: %s/r/n",utcTime.tolatin1().data() );
printf ("Offset : %s/r/n",diffStr.tolatin1().data() );
return 0;
}
/**
* QString getTimezoneDiff( QDateTime dt )
* @param dt well formated date time (YYYY-MM-DD hh:mm:ss)
* @return tzDiff (<+->hhmm)
*
* Purpose: return a timezone offset string to Feed to Postgresql
*/
QString getTimezoneDiff( QDateTime dt ) {
QString localdt = dt.toString ( "hhmm" );// get the local time part from the @param
QString utcDT = dt.toUTC().toString ( "hhmm" );// get the UTC time part from the @param
QString tzDiff;// this will hold the returned timezone diff.
qint8 hhmmdt = localdt.toInt();
qint8 hhmmUTC= utcDT.toInt();
qint8 offset = hhmmdt - hhmmUTC;
// is it a positive offset?if (offset>=0) {tzDiff = "+" + tzDiff.setNum(offset);;}elsetzDiff.setNum(offset);return tzDiff;}
原文地址:https://www.jb51.cc/postgresql/196985.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。