Sample code for 30+ languages & platforms
Xbase++

Compute Difference Between Two DateTime Strings

Demonstrates how to compute the difference between two datetime strings.

Chilkat Xbase++ Downloads

Xbase++
LOCAL cT1
LOCAL cT2
LOCAL oSb1
LOCAL nCount
LOCAL oSb2
LOCAL oDt1
LOCAL oDt2
LOCAL nDiffSeconds

//  Imagine we have these strings:

cT1 := "2022-11-14 15:45:38"
cT2 := "2022-11-16 17:23:41"

//  How many minutes are between the two?

//  First, we'd want load each date/time into a Chilkat CkDateTime object.
//  In this case, there are no CkDateTime methods that accept the above format.
//  However.. the CkDateTime's SetFromTimestamp will accept a date in the format "YYYY-MM-DDThh:mm:ssZ"

//  First modify the above dates to the timestamp format.
oSb1 := CreateObject("Chilkat.StringBuilder")
oSb1:Append(cT1)
nCount := oSb1:Replace(" ", "T")
oSb1:Append("Z")

oSb2 := CreateObject("Chilkat.StringBuilder")
oSb2:Append(cT2)
nCount := oSb2:Replace(" ", "T")
oSb2:Append("Z")

//  Load each into a CkDateTime
oDt1 := CreateObject("Chilkat.CkDateTime")
oDt1:SetFromTimestamp(oSb1:GetAsString())
//  verify...
? oDt1:GetAsTimestamp(0)

oDt2 := CreateObject("Chilkat.CkDateTime")
oDt2:SetFromTimestamp(oSb2:GetAsString())
//  verify...
? oDt2:GetAsTimestamp(0)

//  Get the difference in seconds
nDiffSeconds := oDt2:DiffSeconds(oDt1)
? "Difference in seconds: " + Str(nDiffSeconds)
? "Difference in minutes: " + Str(nDiffSeconds / 60)

oSb1:destroy()
oSb2:destroy()
oDt1:destroy()
oDt2:destroy()