PDA

View Full Version : [VB NET]calcolare differenza di giorni tra date


IronM4ever
30-03-2008, 15:53
b.giorno a tutti qualcuno sa o può postarmi un esempio di come si calcola la differenza in giorni che c'è tra due date?

wizard1993
30-03-2008, 16:27
tramite un semplice calcolo:
(unix timestap 1)-(unix timestamp2)/(24*60*60)
rispettivamente
(data 1)-(data2)/(secondi di un giorno),
questo credo sia l'unica cosa buona del formato data di unix

IronM4ever
30-03-2008, 16:33
scusa ma non ho capito bene...io ho tre textbox, nelle prime due ci sono le date, e voglio che un button faccia comparire nella terza textbox quanti giorni ci sono tra una data e l'altra. che codice devo inserire nell'evento click del button?

wizard1993
30-03-2008, 16:36
non programmo in visual basic, quindi ti dico cosa fare alivello teorico:
devi convertire le date nel formato di unix (una immensa cifra intera che corrisponde ai secondo passati dal 1970) eseguire la sottrazione fra quei due e a quel punto avrai i secondi trascorsi fra una data e l'altra, a questo punto esegui una divisione intera per i secondi di un giorno(24*60*60) e avrai la differenza di giorni

john_revelator
30-03-2008, 16:53
Dim data1 As New Date(2008, 01, 01)
Dim data2 As New Date(2008, 02, 01)
Dim tspan As TimeSpan = data2.Subtract(data1)

IronM4ever
30-03-2008, 16:57
Dim data1 As New Date(2008, 01, 01)
Dim data2 As New Date(2008, 02, 01)
Dim tspan As TimeSpan = data2.Subtract(data1)


scusa ma il codice completo da assegnare ad un button?

kernel::panic
30-03-2008, 19:20
Per i campi data, invece della TextBox io userei dei DateTimePicker che obbligano l'utente ad inserire solo date.

Nel click del tasto inserisci questo codice (è in C#, purtroppo non conosco VB...)
(dtpDataA.Value - dtpDataB.Value).Days