日期到Java中的整数转换 [英] Date to Integer conversion in Java

查看:108
本文介绍了日期到Java中的整数转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有以下内容的int变量。如何将其转换为Date对象,反之亦然。

  int inputDate = 20121220; 


解决方案

将值转换为字符串并使用 SimpleDateFormat 将其解析为日期对象:

  int inputDate = 20121220; 
DateFormat df = new SimpleDateFormat(yyyyMMdd);
Date date = df.parse(String.valueOf(inputDate));

相反是相似的,而不是使用 parse / a>,使用 格式 ,并从生成的 String 转换为整数

  String s = date.format(date); 
int output = Integer.valueOf(s);

另一种方法是使用 substring 并手动解析您 Int eger的 String 表示,尽管我强烈建议您反对:

 日历cal = Calendar.getInstance(); 
String input = String.valueOf(inputDate);
cal.set(Calendar.YEAR,Integer.valueOf(input.substring(0,4)));
cal.set(Calendar.MONTH,Integer.valueOf(input.substring(4,6)))1);
cal.set(Calendar.DAY_OF_MONTH,Integer.valueOf(input.substring(6)));
日期date = cal.getTime();


I have an int variable with following. How can I convert it to Date object and vice versa.

int inputDate=20121220;

解决方案

Convert the value to a String and use SimpleDateFormat to parse it to a Date object:

int inputDate = 20121220;
DateFormat df = new SimpleDateFormat("yyyyMMdd");
Date date = df.parse(String.valueOf(inputDate));

The converse is similar, but instead of using parse, use format, and convert from the resulting String to an Integer:

String s = date.format(date);
int output = Integer.valueOf(s);

An alternative is to use substring and manually parse the String representation of your Integer, though I strongly advise you against this:

Calendar cal = Calendar.getInstance();
String input = String.valueOf(inputDate);
cal.set(Calendar.YEAR, Integer.valueOf(input.substring(0, 4)));
cal.set(Calendar.MONTH, Integer.valueOf(input.substring(4, 6)) - 1);
cal.set(Calendar.DAY_OF_MONTH, Integer.valueOf(input.substring(6)));
Date date = cal.getTime();

这篇关于日期到Java中的整数转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆