In this article, we will see how to calculate the number of days between two dates using the go programming language.

To achieve this, we use the time package from the go standard library.

Here, the input that we get is the range i.e. two dates (from & to date) and we have to calculate the difference between those two dates.

First, we need to parse the date strings into time.Time values. The time package provides the time.Parse function, which takes two string arguments i.e. the layout and the date string to be parsed. The layout is the format of the date string.

After parsing the date strings into time.Time values, we can calculate the number of days between the two dates by subtracting the earlier date from the later date and dividing the resulting duration by the number of nanoseconds in a day.

Following is the example of how to calculate the number of days between two dates:

package main

import (
	"fmt"
	"time"
)

func main() {
	layout := "2006-01-02"
	dateString1 := "2023-03-23"
	dateString2 := "2023-04-20"

	date1, err := time.Parse(layout, dateString1)
	if err != nil {
		fmt.Println("Error parsing date string 1:", err)
		return
	}

	date2, err := time.Parse(layout, dateString2)
	if err != nil {
		fmt.Println("Error parsing date string 2:", err)
		return
	}

	duration := date2.Sub(date1)
	days := int(duration.Hours() / 24)

	fmt.Println("Days between dates:", days)
}

In the above example, First, we convert two date strings to time.Time values, then using the Sub method we determine the duration between two dates. Finally, the number of days is calculated by converting the duration to hours and dividing by 24.

Categorized in:

Tagged in: