日期、字符串及长整型之间的互相转换

本文介绍如何在Java中实现长整型数字与日期格式字符串的相互转换,包括将长整型数字转换为日期字符串,以及将日期字符串转换回长整型数字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

  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
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值