- String 与 Date互转
(1)基于SimpleDateFormat实现:package com.bky.df; import java.text.ParseException; import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.Date; public class DateLangUtils{ public static void main(String[] args) throws ParseException { Date nowDate = new Date(); String formatString = "yyyy-MM-dd HH:mm:ss"; String dateString = "2018-12-02 16:33:15"; System.out.println(getString(nowDate, formatString)); System.out.println(getDate(dateString, formatString)); System.out.println(getDatePos(dateString, formatString)); } /** * 使用SimpleDateFormat格式化Date * * @param date * @param formatString * @return */ public static String getString(Date date, String formatString) { SimpleDateFormat formatter = new SimpleDateFormat(formatString); return formatter.format(date); } /** * 使用SimpleDateFormat解析日期字符串 * * @param dateString * @param formatString * @return * @throws ParseException */ public static Date getDate(String dateString, String formatString) throws ParseException { SimpleDateFormat formatter = new SimpleDateFormat(formatString); return formatter.parse(dateString); } /** * 使用SimpleDateFormat解析日期字符串 * * @param dateString * @param formatString * @return */ public static Date getDatePos(String dateString, String formatString) { SimpleDateFormat formatter = new SimpleDateFormat(formatString); return formatter.parse(dateString, new ParsePosition(0)); } }
(2)使用commons组件实现
import java.text.ParseException; import java.util.Date; import org.apache.commons.lang3.time.DateFormatUtils; import org.apache.commons.lang3.time.DateUtils; public static void main(String[] args) throws ParseException { Date nowDate = new Date(); String formatString = "yyyy-MM-dd HH:mm:ss"; String dateString = "2018-12-02 16:33:15"; System.out.println(DateFormatUtils.format(nowDate, formatString)); System.out.println(DateUtils.parseDate(dateString, formatString)); }
- 对日期的相关操作
基于Calendar实现
Calendar cal = Calendar.getInstance(); // 设置Calendar时间(1.Date 2.longofmills) cal.setTime(new Date()); cal.setTimeInMillis(System.currentTimeMillis()); // 设置年月日,时分秒,毫秒 cal.set(Calendar.YEAR, cal.get(Calendar.YEAR)); // Calendar.MONTH 从0开始表示1月,需要转换展示/设置 cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)); cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)); // 24小时制 cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY)); // 12小时制 cal.set(Calendar.HOUR, cal.get(Calendar.HOUR)); cal.set(Calendar.MINUTE, cal.get(Calendar.MINUTE)); cal.set(Calendar.SECOND, cal.get(Calendar.SECOND)); cal.set(Calendar.MILLISECOND, cal.get(Calendar.MILLISECOND)); // 设置与星期相关参数 // 设置当周星期周几(1为星期日,7为星期六) cal.set(Calendar.DAY_OF_WEEK, cal.get(Calendar.DAY_OF_WEEK)); // 设置当月第几个星期(默认地区是从星期日开始算,以日历计算第几周) cal.set(Calendar.WEEK_OF_MONTH, cal.get(Calendar.WEEK_OF_MONTH)); // 设置当月第几个星期(设置按当月的天数算第几周,7天一周) cal.set(Calendar.DAY_OF_WEEK_IN_MONTH, cal.get(Calendar.DAY_OF_WEEK_IN_MONTH)); // 设置一年中第几个星期 cal.set(Calendar.WEEK_OF_YEAR, cal.get(Calendar.WEEK_OF_YEAR)); // 设置当月第一天 cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.DAY_OF_MONTH)); cal.set(Calendar.HOUR_OF_DAY, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MILLISECOND, 0); // 设置当月最后一天 cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH)); cal.set(Calendar.HOUR_OF_DAY, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MILLISECOND, 0);
java 的Date 日期相关操作
猜你喜欢
转载自www.cnblogs.com/aben-blog/p/8907749.html
今日推荐
周排行