本文为大家分享了java日期与时间戳相互转换大全,供大家参考,具体内容如下
package com.crm.util; import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * @author DingJiaCheng * */ public class DateFormatUtil { /** * 时间戳转日期 * @param ms * @return */ public static Date transForDate(Integer ms){ if(ms==null){ ms=0; } long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date temp=null; if(ms!=null){ try { String str=sdf.format(msl); temp=sdf.parse(str); } catch (ParseException e) { e.printStackTrace(); } } return temp; } /** * 获取晚上9点半的时间戳 * * @return */ public static int getTimes(int day, int hour, int minute) { Calendar cal = Calendar.getInstance(); cal.add(Calendar.DATE, day); cal.set(Calendar.HOUR_OF_DAY, hour); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MINUTE, minute); cal.set(Calendar.MILLISECOND, 0); return (int) (cal.getTimeInMillis() / 1000); } /** * 获取当前时间往上的整点时间 * * @return */ public static int getIntegralTime() { Calendar cal = Calendar.getInstance(); cal.add(Calendar.HOUR_OF_DAY, 1); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.MILLISECOND, 0); return (int) (cal.getTimeInMillis() / 1000); } public static int getIntegralTimeEnd() { Calendar cal = Calendar.getInstance(); cal.set(Calendar.HOUR_OF_DAY, 24); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.MILLISECOND, 0); return (int) (cal.getTimeInMillis() / 1000); } /** * 时间戳转日期 * @param ms * @return */ public static Date transForDate3(Integer ms){ if(ms==null){ ms=0; } long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date temp=null; if(ms!=null){ try { String str=sdf.format(msl); temp=sdf.parse(str); } catch (ParseException e) { e.printStackTrace(); } } return temp; } /** * 时间戳转日期 * @param ms * @return */ public static Date transForDate(Long ms){ if(ms==null){ ms=(long)0; } long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date temp=null; if(ms!=null){ try { String str=sdf.format(msl); temp=sdf.parse(str); } catch (ParseException e) { e.printStackTrace(); } } return temp; } public static String transForDate1(Integer ms){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(ms!=null){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } public static String transForDate2(Integer ms){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); if(ms!=null){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } public static String transForDate4(Integer ms){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy.MM.dd"); if(ms!=null){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } public static String transForDate5(Integer ms){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); if(ms!=null){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } public static String transForDateInChinese(Integer ms){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); if(ms!=null){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } /** * 日期转时间戳 * @param date * @return */ public static Integer transForMilliSecond(Date date){ if(date==null) return null; return (int)(date.getTime()/1000); } /** * 获取当前时间戳 * @return */ public static Integer currentTimeStamp(){ return (int)(System.currentTimeMillis()/1000); } /** * 日期字符串转时间戳 * @param dateStr * @return */ public static Integer transForMilliSecond(String dateStr){ Date date = DateFormatUtil.formatDate(dateStr); return date == null ? null : DateFormatUtil.transForMilliSecond(date); } /** * 日期字符串转时间戳 * @param dateStr * @return */ public static Integer transForMilliSecond(String dateStr,String format){ Date date = DateFormatUtil.formatDate(dateStr,format); return date == null ? null : DateFormatUtil.transForMilliSecond(date); } /** * 日期字符串转时间戳 * @param dateStr * @param 格式 如"yyyy-mm-dd" * @return */ public static Integer transForMilliSecondByTim(String dateStr,String tim){ SimpleDateFormat sdf=new SimpleDateFormat(tim); Date date =null; try { date = sdf.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return date == null ? null : DateFormatUtil.transForMilliSecond(date); } /** * 字符串转日期,格式为:"yyyy-MM-dd HH:mm:ss" * @param dateStr * @return */ public static Date formatDate(String dateStr){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date result=null; try { result = sdf.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return result; } /** * 字符串转日期,格式为:"yyyy-MM-dd HH:mm:ss" * @param dateStr * @return */ public static Date formatDate(String dateStr,String format){ SimpleDateFormat sdf=new SimpleDateFormat(format); Date result=null; try { result = sdf.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return result; } /** * 日期转字符串 * @param date * @return */ public static String formatDate(Date date){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String result=null; result = sdf.format(date); return result; } /** * 日期转字符串 * @param date * @return */ public static String formatDate(Date date,String format){ SimpleDateFormat sdf=new SimpleDateFormat(format); String result=null; result = sdf.format(date); return result; } /** * 时间戳格式化输出(httl模版用) * * @param ms 时间戳 * @param format 格式化 * @return */ public static String transForDate(Integer ms, String format){ String str = ""; if(ms!=null){ long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat(format); if(!ms.equals(0)){ try { str=sdf.format(msl); } catch (Exception e) { e.printStackTrace(); } } } return str; } /** * 取BigDecimal类型数的整数或小数部分(httl模版用) * * @param b 值 * @param mode 模式 0取整 1去小数部分 * @return */ public static String splitBigDecimal(BigDecimal b, int mode) { DecimalFormat df = new DecimalFormat("0.00"); String s = df.format(b); if(mode==0){ return s.split("\\.")[0]; }else { return "."+s.split("\\.")[1]; } } /** * 计算两个日期之间差的天数(httl模版用) * * @param ts1 时间戳1 * @param ts2 时间戳2 * @return */ public static int caculate2Days(Integer ts1, Integer ts2) { Date firstDate = DateFormatUtil.transForDate(ts1); Date secondDate = DateFormatUtil.transForDate(ts2); Calendar calendar = Calendar.getInstance(); calendar.setTime(firstDate); int dayNum1 = calendar.get(Calendar.DAY_OF_YEAR); calendar.setTime(secondDate); int dayNum2 = calendar.get(Calendar.DAY_OF_YEAR); return Math.abs(dayNum1 - dayNum2); } /** * 给手机加密中间四位加星号 * * @param mobile * @return */ public String mobileSerect(String mobile){ if(!StringUtils.isBlank(mobile)){ int between = mobile.length()/2; mobile = mobile.substring(0, between-2)+"****"+mobile.substring(between+2, mobile.length()); } return mobile; } /** * 给邮箱加密加星号 * * @param email * @return */ public String emailSerect(String email) { if(!StringUtils.isBlank(email)){ int length = email.lastIndexOf("@"); email = email.substring(0, 2)+"****"+email.substring(length-2, email.length()); } return email; } /** * BigDecimal类型数据相加 * * @param BigDecimal source * @param BigDecimal target * @return */ public BigDecimal sumBigDicimal(BigDecimal source, BigDecimal target) { source = source.add(target); return source; } /** * BigDecimal类型数据相加 * * @param BigDecimal source * @param BigDecimal target * @return */ public BigDecimal sumBigDicimalAndDouble(BigDecimal source, Double target) { BigDecimal new_target = new BigDecimal(target); source = source.add(new_target); return source; } /** * BigDecimal类型数据相减 * * @param BigDecimal source * @param BigDecimal target * @return */ public BigDecimal subBigDicimal(BigDecimal source, BigDecimal target) { source = source.subtract(target); return source; } /** * 获取传入时间和当前时间的时间差 * @return */ public static Long getTimediff(int timeStamp){ Date d1 = DateFormatUtil.transForDate(timeStamp); Date today = new Date(); if(d1.getTime()<today.getTime()){ return null; } return (d1.getTime()-today.getTime())/1000; } /** * 获取某周的第一天日期 * @param week 0 当周 1 上一周 -1 下一周 * @return */ public static String weekFirstDay(int week){ Calendar c1 = Calendar.getInstance(); int dow = c1.get(Calendar.DAY_OF_WEEK); c1.add(Calendar.DATE, -dow-7*(week-1)-5 ); String d1 = new SimpleDateFormat("yyyy-MM-dd").format(c1.getTime()); return d1+" 00:00:00"; } /** * 当前时间加一年 */ public static String addYear(int startTime){ Date firstDate = DateFormatUtil.transForDate(startTime); Calendar calendar = Calendar.getInstance(); calendar.setTime(firstDate); calendar.add(Calendar.YEAR,1); String d1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()); return d1; } /** * 获取某周的最后一天日期 * @param week * @return */ public static String weekLastDay(int week){ Calendar c1 = Calendar.getInstance(); int dow = c1.get(Calendar.DAY_OF_WEEK); c1.add(Calendar.DATE, -dow-7*(week-1)+1); String d1 = new SimpleDateFormat("yyyy-MM-dd").format(c1.getTime()); return d1+" 23:59:59"; } /** * 和当前时间比对 * @return */ public static boolean greaterThanNow(int timeStamp){ Date d1 = DateFormatUtil.transForDate(timeStamp); Date today = new Date(); if(d1.getTime()>=today.getTime()){ return true; } return false; } /** * HH:mm:ss格式时间转换为1970-01-01日的时间戳(也就是只有时间没有日期的情况要求使用时间戳表示时间) * @author DingJiaCheng * */ public static int transFromTime(String time){ return transForMilliSecond("1970-01-01 "+time,"yyyy-mm-dd HH:mm:ss"); } /** * 时间戳转换为HH:mm:ss格式时间(日期去除) * @author DingJiaCheng * */ public static String transToTime(int time){ String s = new String(transForDate1(time)); String ss[] = s.split(" "); return ss[1]; } public static int transToChuo(String dateString){ SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd"); int res = 0; try { Date date=simpleDateFormat .parse(dateString); res = (int) date.getTime(); } catch (ParseException e) { e.printStackTrace(); } return res; } public static void main(String[] args) { //System.out.println(getIntegralTimeEnd()); System.out.println(transForDate2(transForMilliSecond("2015-02-25 00:00:00"))); //System.out.println(transForMilliSecond("2016-01-25","yyyy-mm-dd")); //System.out.println(transForDate1(transForMilliSecond("1970-01-01 00:00:00","yyyy-mm-dd HH:mm:ss"))); //System.out.println(currentTimeStamp()); //System.out.println(transForDate(currentTimeStamp())); //System.out.println(new Date()); //System.out.println(DateUtils.getDate()); System.out.println(transFromTime("00:00:01")); System.out.println(transToTime(transFromTime("15:01:13"))); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Java日期时间以及日期相互转换,包括了Java日期时间以及日期相互转换的使用技巧和注意事项,需要的朋友参考一下 Java日期时间,以及相互转化,供大家参考,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍python时间与Unix时间戳相互转换方法详解,包括了python时间与Unix时间戳相互转换方法详解的使用技巧和注意事项,需要的朋友参考一下 对于时间数据,如2018-09-25 09:28:59,有时需要与Unix时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体的函数如下: 其中unix_time函数是正常时间转unix时间
本文向大家介绍Python时间戳使用和相互转换详解,包括了Python时间戳使用和相互转换详解的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Python时间戳使用和相互转换的具体代码,供大家参考,具体内容如下 1.将字符串的时间转换为时间戳 方法: 2.字符串格式更改 如a = "2013-10-10 23:40:00",想改为 a ="2013/10/10 23:40:
本文向大家介绍Java日期时间及日期相互转换实现代码,包括了Java日期时间及日期相互转换实现代码的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了Java日期时间及日期相互转换实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化
本文向大家介绍浅谈时间戳与日期时间互转C语言,包括了浅谈时间戳与日期时间互转C语言的使用技巧和注意事项,需要的朋友参考一下 浅谈时间戳与日期时间互转C语言 以上这篇浅谈时间戳与日期时间互转C语言就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
问题内容: 如何将Unix时间戳中的时间转换为正常时间? 问题答案: 您的问题含糊不清。我将消除时区的歧义。 如何将Unix时间戳中的时间转换为正常时间? 我怀疑您是以某种方式从数据库而不是从中获取或一个值。在JDBC中,通常希望使用适当的方法来获取特定于DB的数据类型。可以获取MySQL 数据类型,从而为您提供,而后者又是的子类。 简而言之,应该执行以下操作: 要将其呈现给最终用户时,要以人类可