zoukankan      html  css  js  c++  java
  • 日期、字符串及长整型之间的互相转换

      我们在数据库中存储日期时间时,通常建议存储为长整型数字,既有利于数据优化,也有利于操作日期数据时的统一。这就需要用到日期、字符串即长整型数据之间的互相转换。我们接下来就解决这样的问题。

      1.将长整型数字转换为日期格式的字符串    

     1 import java.text.ParseException;
     2 import java.text.SimpleDateFormat;
     3 import java.util.Date;
     4 /**
     5  * 日期/字符串/长整型数字间的互转
     6  */
     7 public class Test1 {
     8     // 短日期格式
     9     public static String DATE_FORMAT = "yyyy-MM-dd";
    10     // 长日期格式
    11     public static String TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
    12     public static void main(String[] args) {
    13         System.out.println(System.currentTimeMillis());
    14         System.out.println(test1(System.currentTimeMillis(), DATE_FORMAT));
    15     }
    16     //将长整型数字转换为日期格式的字符串
    17     static String test1(long time, String format) {
    18         SimpleDateFormat dateFormat = new SimpleDateFormat(format);
    19         Date date = new Date(time);
    20         return dateFormat.format(date);
    21     }
    22 }

      上述代码执行后输出结果如下:

    1517309922118
    2018-01-30

      2.将日期格式的字符串转换为长整型  

     1 import java.text.ParseException;
     2 import java.text.SimpleDateFormat;
     3 import java.util.Date;
     4 /**
     5  * 日期/字符串/长整型数字间的互转
     6  */
     7 public class Test1 {
     8     // 短日期格式
     9     public static String DATE_FORMAT = "yyyy-MM-dd";
    10     // 长日期格式
    11     public static String TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
    12     public static void main(String[] args) {
    13 //        System.out.println(System.currentTimeMillis());
    14 //        System.out.println(test1(System.currentTimeMillis(), DATE_FORMAT));
    15         try {
    16             long time = test2(test1(System.currentTimeMillis(), DATE_FORMAT), DATE_FORMAT);
    17             System.out.println(time+"");
    18         } catch (ParseException e) {
    19             e.printStackTrace();
    20         }
    21     }
    22     //将长整型数字转换为日期格式的字符串
    23     static String test1(long time, String format) {
    24         SimpleDateFormat dateFormat = new SimpleDateFormat(format);
    25         Date date = new Date(time);
    26         return dateFormat.format(date);
    27     }
    28     //将日期格式的字符串转换为长整型
    29     static long test2(String date,String format) throws ParseException {
    30         SimpleDateFormat dateFormat = new SimpleDateFormat(format);
    31         return dateFormat.parse(date).getTime();
    32     }
    33 }

      上述代码执行结果如下:

    1517241600000
  • 相关阅读:
    《大话设计模式》读书笔记
    设计模式个人笔记
    多线程的单元测试工具
    设计模式六大原则
    时间复杂度和空间复杂度(转)
    排序算法笔记
    《人月神话》读书笔记
    微信公众号开发踩坑记录(二)
    微信公众号开发踩坑记录
    全栈工程师之路
  • 原文地址:https://www.cnblogs.com/lizhangyong/p/8386634.html
Copyright © 2011-2022 走看看