• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Java日期操作

武飞扬头像
pageniao
帮助1

@[TOC]日期转换、格式化

日期格式化——DateFormat/SimpleDateFormat

DateFormat 是日期/时间格式化子类的抽象类。其子类(如 SimpleDateFormat)能够进行格式化(也就是日期→文本)、解析(文本→日期)和标准化日期。

在创建 DateFormat 对象时不能使用 new 关键字,而应该使用 DateFormat 类中的静态方法 getDateInstance(),示例代码如下:

    // Date和字符串相互转化(字符串转换为Date类型时,有汉字的字符串可以使用0或1模式,没汉字的可以使用默认、2、3模式)
    // 默认格式化模式
    //    val df = DateFormat.getDateInstance()
    //    val str1 = df.format(new Date()) // 2021-11-11
    //    val date = df.parse("2021-11-11") // Thu Nov 11 00:00:00 CST 2021

    // 0代表的格式化模式
    //    val df = DateFormat.getDateInstance(0)
    //    val str1 = df.format(new Date()) // 2021年11月11日 星期四
    //    val date = df.parse("2021年11月11日 星期四") // Thu Nov 11 00:00:00 CST 2021

    // 1代表的格式化模式
    // val df = DateFormat.getDateInstance(1)
    // val str1 = df.format(new Date()) // 2021年11月11日
    // val date = df.parse("2021年11月11日 星期四") // Thu Nov 11 00:00:00 CST 2021

    // 2代表的格式化模式
    //    val df = DateFormat.getDateInstance(2)
    //    val str1 = df.format(new Date()) // 2021-11-11
    //    val date = df.parse("2021-11-11") // Thu Nov 11 00:00:00 CST 2021

    // 3代表的格式化模式,无其他模式
    //    val df = DateFormat.getDateInstance(3)
    //    val str1 = df.format(new Date()) // 21-11-11
    //    val date = df.parse("2021-11-11") // Thu Nov 11 00:00:00 CST 2021

    // SimpleDateFormat使用
    val sf = new SimpleDateFormat("yyyy-MM-dd")
    val date = sf.parse("2021-11-11") // Thu Nov 11 00:00:00 CST 2021
    val str = sf.format(new Date()) // 2021-11-11

    val sf2 = new SimpleDateFormat("yyyyMMdd")
    val date1 = sf2.parse("20211111") // Thu Nov 11 00:00:00 CST 2021
    val str1 = sf2.format(new Date()) // 20211111

    // 给定一个月的其中一个日期,获取所在月的第一天和最后一天
    val cal = Calendar.getInstance()
    cal.setTime(date1)
    cal.set(Calendar.DAY_OF_MONTH, 1) // 变换第二个参数获取月的相应的第几天,但这种写法会和roll()方法相互干涉
    println(new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime())) // 月第一天 2021-11-01
    cal.roll(Calendar.DAY_OF_MONTH, -1)
    println(new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime())) // 月最后一天 2021-11-30
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgkbcif
系列文章
更多 icon
同类精品
更多 icon
继续加载