【问题标题】:Simple java date conversion简单的java日期转换
【发布时间】:2011-10-25 08:21:24
【问题描述】:

遇到一些麻烦,无法快速找到答案..

我尝试将日期存储在字符串中,然后将其获取以将其转换回日期。

但是在使用以下方式存储日期时:

string tmp = new Date().toString();

然后尝试使用将其转换回来

Date date = new Date(tmp);

我得到了异常类型

 java.lang.IllegalArgumentException

使用我的 Android 2.2 设备。是否适用于 2.2 和 2.3 鸸鹋。

关于我可以通过什么其他方式存储和转换回来的任何提示?

【问题讨论】:

标签: java android date


【解决方案1】:

您可以使用SimpleDateFormat 及其方法parse()format()

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss.SSS");
String tmp = sdf.format(new Date());
Date date = sdf.parse(tmp);

【讨论】:

【解决方案2】:

你需要它是一个字符串吗?长更容易:)

long time = new Date().getTime();

Date date = new Date(time);

那你就不用解析了

【讨论】:

  • 会保留字符串,因为我是这样构建的,但感谢您的提示!
【解决方案3】:
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

// to string
String dateStr = formatter.format(new Date());

// to date 
Date date = formatter.parse(dateStr);

【讨论】:

  • @XaviLópez 有什么问题?
  • @XaviLópez 我在你添加答案时写了答案,那么有什么大不了的?
【解决方案4】:

使用 SimpleDateFormat,如下所示。

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");

//this will convert date into string.
String temp = formatter.format(currentDate.getTime());

//this will convert string into date format.    
Date date=(Date)formatter.parse(temp);

【讨论】:

    猜你喜欢
    • 2011-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-09
    相关资源
    最近更新 更多