如何将Milli秒的时间转换为C 中的filtime
How to convert milli seconds time to FILETIME in c++
我有时间在secs(ex:1505306792)。
如何将其转换为filtime?
这是我尝试过的代码
INT64 timer64 = 1505306792;
timer64 = timer64 *1000 *10000;
ULONGLONG xx = timer64;
FILETIME fileTime;
ULARGE_INTEGER uliTime;
uliTime.QuadPart = xx;
fileTime.dwHighDateTime = uliTime.HighPart;
fileTime.dwLowDateTime = uliTime.LowPart;
此结果filtime即将到来为1648-09-13 15:34:00
我希望这个日期是2017-09-13 12:46:31。使用在线转换器时,我会得到同样的事情。
任何想法如何解决?
我已经使用Boost看到了一些答案,但是它在我的项目中可用。
它是要添加1164444736000000000,请参阅如何将UNIX TIME_T转换为Win32 Filetime或SystemTime:
#include <winbase.h>
#include <winnt.h>
#include <time.h>
void UnixTimeToFileTime(time_t t, LPFILETIME pft)
{
// Note that LONGLONG is a 64-bit value
LONGLONG ll;
ll = Int32x32To64(t, 10000000) + 116444736000000000;
pft->dwLowDateTime = (DWORD)ll;
pft->dwHighDateTime = ll >> 32;
}
相关文章:
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 了解 GLM- openGL 中的相机转换
- C++中的双指针类型转换
- 了解双精度转换与整数转换中的整数与截断关系
- C++要包含在词法强制转换中的头文件
- 是否可以使用 SAPI 忽略Microsoft文本到语音转换中的单词
- 处理字符到QString转换中的ASCII字符
- 反射格雷码到二进制转换中的幻数
- 自定义文本到语音转换中的语音
- C++ 为转换中的多数组错误增加值
- Java C/C++ 转换中的指针
- 标准::转换中的 [] const_iterator::value_type 是什么意思
- HSV 转换中的浮点错误
- 动态转换中的错误
- c++int存储为char*转换中的字符,无需任何API
- 引用类型转换中的c++虚函数
- 不同的编译器用来处理数字转换中的溢出的常见策略是什么?
- 隐式常量转换中的溢出[-Woverflow]
- 从c++到c# . net紧凑框架结构转换中的问题