Ho un timestamp in arrivo, mi chiedo se c'è un modo per arrotondare verso il basso fino all'inizio di un giorno in PST. Ad esempio, ts: 1305861602
corrisponde a 2016-04-14, 21:10:27 -0700
, ma voglio arrotondarlo a un timestamp che corrisponde a 2016-04-14 00:00:00 -0700
. Ho letto tutto il tempo. Tempo doc ma non ho trovato il modo di farlo.Golang: time.Time Round to Day
12
A
risposta
16
Il modo più semplice per eseguire questa operazione è creare il nuovo Time
utilizzando il precedente e assegnando solo l'anno e il giorno. Sembrerebbe questo;
rounded := time.Date(toRound.Year(), toRound.Month(), toRound.Day(), 0, 0, 0, 0, toRound.Location())
ecco un esempio di riproduzione; https://play.golang.org/p/jnFuZxruKm
7
È possibile utilizzare semplicemente la durata 24 * time.Hour
per troncare il tempo.
t := time.Date(2015, 4, 2, 0, 15, 30, 918273645, time.UTC)
d := 24 * time.Hour
t.Truncate(d)
+13
Nota che il troncamento tronca sempre rispetto a UTC, quindi se il proprio fuso orario non è UTC, il tempo risultante non sarà 00:00 in quel fuso orario. – Guy
Problemi correlati
- 1. Golang: conversione time.Time a stringa
- 2. Golang JSON omitempty Con time.Time Field
- 3. Golang XML Unmarshal e time.Time fields
- 4. Round datetime to last
- 5. Joda time round to days
- 6. unix timestamp round to midnight
- 7. Rails: Date.today - 1.day
- 8. conforme a IEEE-754 round-half-to-even
- 9. DateTime Format Day of Year
- 10. Perché time.clock fornisce un tempo trascorso più lungo di time.time?
- 11. Atom Editor Golang - Go To Declaration not working
- 12. Python: conversione da `datetime.datetime` a` time.time`
- 13. Il round trip SHA256
- 14. NSDecimalNumber round long numbers
- 15. MySQL round bizzarro bug
- 16. Il modo migliore per analizzare data e ora in golang
- 17. DateTime Round Up and Down
- 18. Jinja2 filtro round non arrotondamento
- 19. Rottura del round con numpy
- 20. Assegnazione round-robin in Ruby
- 21. LINQ ordina da "round robin"
- 22. Xcode 5 Round Rect Buttons
- 23. round up più vicino 0.10
- 24. Doppio round in Objective-C
- 25. .Day() restituisce il giorno sbagliato del mese, con Moment.js
- 26. JQuery Calcolare Day Difference in 2 caselle di testo data
- 27. MomentJS Day differ date solo escluso il tempo
- 28. Time.time() di Python restituisce un timestamp in UTC?
- 29. Come .Scan() un valore TIMESTAMP MySQL in una variabile time.Time?
- 30. Timestamp di analisi completa in Golang
fa [ 'Time.Truncate'] (https://golang.org/pkg/time/#Time.Truncate) non ciò che si vuole? – JimB
Truncate è un'altra opzione, penso che sia più difficile da implementare tuttavia perché devi creare un 'Duration' per rappresentare ore, minuti, secondi e nanosecondi. – evanmcdonnal
Time.Truncate funziona solo se si desidera UTC, AFAICT – schimmy