String 转为Date 再转为Long(毫秒数)

来源:互联网 发布:西班牙域名 编辑:程序博客网 时间:2024/05/01 11:42

1.最近,因为项目需求,需要对文本里面的日期进行处理。

日期在文本中存储格式为:

2010-12-22T10:49:18+08:00

这个日期代表的意思是东八区,2010年12月22日时间10点49分18秒。

减号代表西区。


joda time简介:

joda-Time 令时间和日期值变得易于管理、操作和理解。事实上,易于使用是 Joda 的主要设计目标。其他目标包括可扩展性、完整的特性集以及对多种日历系统的支持。并且 Joda 与 JDK 是百分之百可互操作的,因此您无需替换所有 Java 代码,只需要替换执行日期/时间计算的那部分代码。

下载joda time的jar包,然后在客户端调用,对字符串的日期进行处理:

package string2date;import org.joda.time.*;public class date_nosql {public static void main(String[] args) {// TODO Auto-generated method stubString date="2010-12-22T10:49:18+08:00";DateTime dt=new DateTime();dt=DateTime.parse(date);System.out.println(dt.getMillis());}}
上面的代码是将string转为DateTime然后转换成秒,为long型。


使用joda time来处理时间比java自带的类方面多了。


2.对于“13-01-31 20:34:47”形式的日期时间,如何转化呢?

解决方案如下:

                lineTxt = bufferedReader.readLine();                    String []fields=lineTxt.split(",");                                        SimpleDateFormat format = new SimpleDateFormat("yy-MM-dd H:m:s");                    Date date = format.parse(fields[1]);                    Calendar cal = Calendar.getInstance();                    cal.setTime(date);                                        System.out.println(cal.getTimeInMillis());



0 0
原创粉丝点击