生成的包序列号是这样的形式
"201303270938510001"(年月日时分秒加4位流水号)
好了,我写好包序号函数了,分享下
QString MainWindow::genSendPacketSerialNumberStr()//产生一个时间+序列号的发送包序号
{
QString str;
static QString lastDateTimeStr = "19700101000000";//初始设为1970年1月1日0点0时0分0秒
static int flownumber=0;//范围1-9999循环往复
QDateTime dt = QDateTime::currentDateTime();
QString currDateTimeStr = dt.toString("yyyyMMddhhmmss");
if(currDateTimeStr>lastDateTimeStr)
{
lastDateTimeStr = currDateTimeStr;//刷新最新时间字串
flownumber = 0;//清0
}
if(flownumber<9999)
flownumber++;
else
flownumber = 0;
str = currDateTimeStr + QString("%1").arg(flownumber, 4, 10, QLatin1Char('0'));
return str;
}
好了,我写好包序号函数了,分享下
QString MainWindow::genSendPacketSerialNumberStr()//产生一个时间+序列号的发送包序号
{
QString str;
static QString lastDateTimeStr = "19700101000000";//初始设为1970年1月1日0点0时0分0秒
static int flownumber=0;//范围1-9999循环往复
QDateTime dt = QDateTime::currentDateTime();
QString currDateTimeStr = dt.toString("yyyyMMddhhmmss");
if(currDateTimeStr>lastDateTimeStr)
{
lastDateTimeStr = currDateTimeStr;//刷新最新时间字串
flownumber = 0;//清0
}
if(flownumber<9999)
flownumber++;
else
flownumber = 0;
str = currDateTimeStr + QString("%1").arg(flownumber, 4, 10, QLatin1Char('0'));
return str;
}