首页 > 编程知识 正文

java 时间戳转date,java获取utc时间

时间:2023-05-03 08:03:44 阅读:23526 作者:2681

本打算逃开百度的时间字符串,转动UTC的代码,但发现没有一个能用的东西,写得很复杂,快死了,没办法自己一个人了。

//*

*从utc时间字符串到本地时间字符串

*我当地的getDateTimeInstance ()是yyyy-MM-dd HH:mm:ss格式

* @param str UTC时间字符串

* @return

*/

publicstaticstringdateutc 2本地字符串{

simpledateformatutcdateformat=newsimpledateformat (' yyyymmdd ' t ' hhmmss ' z ' ); 输入//utc时间格式

ut cdate format.settime zone (time zone.gettime zone (' utc ' );

simpledateformatlocalformater=(简单数据格式) DateFormat.getDateTimeInstance ); Date.toLocaleString ()过时的解决方案

日期日期=null;

try {

date=ut cdate格式. parse (str );

}catch(exceptione ) {

e .打印堆栈跟踪(;

}

returnlocalformater.format (date;

}

//*

*从本地时间字符串到UTC时间字符串

*我当地的getDateTimeInstance ()是yyyy-MM-dd HH:mm:ss格式

* @param str本地时间字符串

* @return

*/

publicstaticstringlocalstring2string utc {

simpledateformatutcformat=newsimpledateformat (' yyyymmdd ' t ' hhmmss ' z ' ); //转换后的UTC时间格式

utc格式. settime zone (time zone.gettime zone (' utc ' ) );

simpledateformatlocalformater=(简单数据格式) DateFormat.getDateTimeInstance ); Date.toLocaleString ()过时的解决方案

日期日期=null;

try {

date=localformater.parse(str );

}catch(exceptione ) {

e .打印堆栈跟踪(;

}

returnutcformat.format(date;

}

Date.toLocaleString (方法已过期,因为我的JDK版本是1.8。 使用了java.text.DateFormat中的getDateTimeInstance )方法。 这个方法我自己的本地格式是yyy-mm-DDh336666

使用localString2StringUTC方法时,如果本地时间字符串的输入格式与getDateTimeInstance方法的格式不匹配,则会发生错误。 可以通过用简单日期格式写死区时间格式来解决。

注:没有进行错误检查和优化。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。