Go语言学习——日期

1、Go语言获取指定日期的前一个月的日期
date为指定日期,返还上一个月的日期

func getlastMonth(date string) string {
    month, _ := strconv.Atoi(date[5:7])
    lastDate := ""
    if month == 1 {
        year, _ := strconv.Atoi(date[0:4])
        lastDate = strconv.Itoa(year-1) + "-12-" + date[8:10]
    } else {
        if (month - 1) >= 10 {
            lastDate = date[0:4] + "-" + strconv.Itoa(month-1) + date[7:10]
        } else {
            lastDate = date[0:4] + "-0" + strconv.Itoa(month-1) + date[7:10]
        }
    }
    return lastDate 
}

2、Go语言获取某个月的最后一天

func getMonthLastDay(year, month string) string {
    days := "31"
    if month != "02" {
        if month == "04" || month == "06" || month == "09" || month == "11" {
            days = "30"
        } else {
            days = "31"
        }
    } else {
        if IsLeapYear(year) == true {
            days = "29"
        } else {
            days = "28"
        }
    }
    return days
}
func IsLeapYear(yearstring string) bool {
    year, err := strconv.Atoi(yearstring)
    if err != nil {
        errInfo := "String conversion to integer failure!"
        err = errors.New(errInfo)
    }
    if ((year%4) == 0 && (year%100) != 0) || (year%400) == 0 {
        return true
    }
    return false
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值