Nếu bạn đang sử dụng C# (hoặc VB.NET hoặc ASP.NET), bạn có thể sử dụng
DateTime dt = DateTime.Now.AddHours(1);
Bạn có thể sử dụng số âm trừ:
DateTime dt = DateTime.Now.AddHours(-1);
EDITED: tôi trích xuất một asnwer từ this post
Chúng đề xuất chuyển đổi SYSTEMTIME thành FILETIME, đây là một số số bọ ve từ kỷ nguyên. Sau đó, bạn có thể thêm số 'số' bắt buộc là (nghĩa là khoảng 100ns) để cho biết thời gian của bạn và chuyển đổi lại thành SYSTEMTIME.
Cấu trúc ULARGE_INTEGER là một liên minh với thành viên QuadPart, là số 64 bit, có thể được thêm trực tiếp vào (trên phần cứng gần đây).
SYSTEMTIME add(SYSTEMTIME s, double seconds) {
FILETIME f;
SystemTimeToFileTime(&s, &f);
ULARGE_INTEGER u ;
memcpy(&u , &f , sizeof(u));
const double c_dSecondsPer100nsInterval = 100. * 1.E-9;
u.QuadPart += seconds/c_dSecondsPer100nsInterval;
memcpy(&f, &u, sizeof(f));
FileTimeToSystemTime(&f, &s);
return s;
}
Nếu bạn muốn thêm một sử dụng giờ SYSTEMTIME s2 = add(s1, 60*60)
Ngôn ngữ nào bạn đang sử dụng ? Và bạn có ý nghĩa gì bởi SYSTEMTIME? –
@Marco xin lỗi tôi đã muộn .. và yeah thanxx người đàn ông nó làm việc tốt cho tôi – Peter