Làm cách nào để tính số ngày giữa hai ngày? Trong đoạn code dưới đây tôi sẽ nhận được số giờ, có nghĩa là tôi chỉ nên chia cho 24. Tuy nhiên, kết quả tôi nhận được là một cái gì đó như -44929.000000. Tôi chỉ tìm kiếm một hoặc hai ngày để tôi mong đợi 24 hoặc 48 giờ.Tính toán số ngày giữa hai ngày?
package main
import (
"fmt"
"time"
)
func main() {
timeFormat := "2006-01-02"
t, _ := time.Parse(timeFormat, "2014-12-28")
fmt.Println(t)
// duration := time.Since(t)
duration := time.Now().Sub(t)
fmt.Printf("%f", duration.Hours())
}
Dưới đây là mã Go thực thi: http://play.golang.org/p/1MV6wnLVKh
Ouch. Tôi từng biết điều đó. Tôi đã không sử dụng Go trong một thời gian. Cảm ơn. – h4labs
Điều này vẫn cho kết quả sai khi thay đổi tiết kiệm ánh sáng ban ngày xảy ra. a [Thời lượng] (http://golang.org/pkg/time/#Duration) chỉ biểu thị thời gian trôi qua giữa hai phiên bản dưới dạng số nano giây int64. Nó không thể được sử dụng trực tiếp để tính toán ngày mà không có lỗi hai lần một năm. Thở dài. –