我有一个文件时间结构,我只想比较看哪个更老(我的目标是降序排序),所以我希望避免FileTimeToSystemTime
这是我的两个结构:
var time1 = {
dwLowDateTime: 2944808535,
dwHighDateTime: 30434197
}
然后
var time2 = {
dwLowDateTime: 3483262096,
dwHighDateTime: 30434432
}
我想知道是否有可靠的方法来测试哪一个更大。我可以比较一下dwHighDateTime
吗?
由于
答案 0 :(得分:2)
是的,您可以比较较高的部分,但它们可能相同。
比较高。如果它们不同,则以较大者为准。如果相同,请比较低。
或将它们转换为LARGE_INTEGER并比较它们:
LARGE_INTEGER one;
one.HighPart = time1.dwHighDateTime;
one.LowPart = time1.dwLowDateTime;
LARGE_INTEGER two;
two.HighPart = time2.dwHighDateTime;
two.LowPart = time2.dwLowDateTime;
if (one.QuadPart > two.QuadPart) {
...
}
您必须这样做的原因是FILETIME早于64位指令的可用性。