Java中Long、String、Date 类型之间的转换

来源:互联网 发布:求50个的素数编程 编辑:程序博客网 时间:2024/05/17 04:01

    

Java中Long、String、Date 类型之间的转换

标签: javaDate
17022人阅读 评论(0)收藏举报
分类:
作者同类文章X

    本文题材比较简单,仅仅作为自己的个人笔记,以备不时之需。今天拿到一个long类型的值,想要转化成Date类型,一时却想不起来,看样子记笔记还是必须的啊!

    (1)java.util.Date类型转换成long类型
    不要唠叨了,还是先上代码

                Date date=new Date();            System.out.println(date.getTime());
    • 1
    • 2

    解析:其中getTime()返回为long类型,长度为13,表示毫秒;如果想获得秒数,只需要除以1000即可。

    long mseconds=date.getTime()/1000;
    • 1

    (2)long类型转换成java.util.Date类型

                SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");              java.util.Date date = new Date(mseconds * 1000);              String str = sdf.format(date);              System.out.println(str);
    • 1
    • 2
    • 3
    • 4

    前面的mseconds是表示的是秒数,所以要先乘1000得到毫秒数,再转为java.util.Date类型,这样就完成了long到Date的转化;为了格式化输出Date,可以调用SimpleDateFormat的format方法格式化输出Date

    (3)形如“2015-08-31 21:08:06”等格式化string类型转换成java.util.Date类型

                String str="2015-08-31 21:08:06";            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");            Date date = (Date) sdf.parse(str);            System.out.println(date.getTime());
    • 1
    • 2
    • 3
    • 4

    其输出结果为

    1441026486000
    • 1

    有时候需要对CST时间进行转化,如:Wed Sep 16 11:26:23 CST 2009,此时同样可以用SimpleDateFormat的parse解决

                String str="Wed Sep 16 11:26:23 CST 2009";            SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);            Date date = (Date) sdf.parse(str);
    • 1
    • 2
    • 3

    备注(util类):

    import java.text.*;import java.util.*;public class DateFormat {    /**     * date类型进行格式化输出     * @param date     * @return     */    public static String dateFormat(Date date) {          SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");          String dateString = formatter.format(date);          return dateString;     }    /**     * 将"2015-08-31 21:08:06"型字符串转化为Date     * @param str     * @return     * @throws ParseException     */    public static Date StringToDate(String str) throws ParseException{        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        Date date = (Date) formatter.parse(str);        return date;    }    /**     * 将CST时间类型字符串进行格式化输出     * @param str     * @return     * @throws ParseException     */    public static String CSTFormat(String str) throws ParseException{            SimpleDateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);            Date date = (Date) formatter.parse(str);            return dateFormat(date);    }    /**     * 将long类型转化为Date     * @param str     * @return     * @throws ParseException     */    public static Date LongToDare(long str) throws ParseException{              return new Date(str * 1000);      }}
    阅读全文
    0 0