在C ++ Wt或Qt库中格式化微秒的最佳方法是什么。我试过这个,“yyyy-mm-ddThh:mm:ss.ffffff”,但是我无法得到1753-01-01T00:00:02的最后一个十进制值。 000004 。
此致 Ansif
答案 0 :(得分:1)
Ansif,你能不能只使用:
WString value = myDate.toString("yyyy-MM-ddTHH:MM:ss");
double microsecond = ...; // get the microsecond from myDate somehow
然后像这样追加微秒:
WString myDate2 = WString("{1}.{2}").arg(myDate).arg(microsecond);
由于Wt的精度仅为毫秒的三位小数,因此您必须自己将微秒部分添加到六位小数并将其转换为std :: string,std :: stringstream或WString()if我理解正确。
如果使用std :: stringstream将微秒转换为std :: string,则std :: setw,std :: setfill,std :: fixed和std :: setprecision可能有助于填充" 000004"微秒。