所以我从表单中的传入对象中获取日期属性:
So I get a date attribute from an incoming object in the form:
Tue May 24 05:05:16 EDT 2011
我正在编写一个简单的辅助方法来将其转换为日历方法,我使用的是以下代码:
I am writing a simple helper method to convert it to a calendar method, I was using the following code:
public static Calendar DateToCalendar(Date date )
{
Calendar cal = null;
try {
DateFormat formatter = new SimpleDateFormat("yyyyMMdd");
date = (Date)formatter.parse(date.toString());
cal=Calendar.getInstance();
cal.setTime(date);
}
catch (ParseException e)
{
System.out.println("Exception :"+e);
}
return cal;
}
为了模拟传入的对象,我只是在当前使用的代码中分配值:
To simulate the incoming object I am just assigning the values within the code currently using:
private Date m_lastActivityDate = new Date();
但是,一旦方法到达,这会给我一个空指针:
However this is givin me a null pointer once the method reaches:
date = (Date)formatter.parse(date.toString());
这是你的方法:
public static Calendar toCalendar(Date date){
Calendar cal = Calendar.getInstance();
cal.setTime(date);
return cal;
}
你所做的一切都是错误和不必要的.
Everything else you are doing is both wrong and unnecessary.
顺便说一句,Java 命名约定建议方法名称以小写字母开头,因此应该是:dateToCalendar 或 toCalendar(如图所示).
BTW, Java Naming conventions suggest that method names start with a lower case letter, so it should be: dateToCalendar or toCalendar (as shown).
好的,让我们挤一下你的代码,好吗?
OK, let's milk your code, shall we?
DateFormat formatter = new SimpleDateFormat("yyyyMMdd");
date = (Date)formatter.parse(date.toString());
DateFormat 用于将字符串转换为日期(parse())或将日期转换为字符串(format()).您正在使用它将日期的字符串表示解析回日期.这不可能吧?
DateFormat is used to convert Strings to Dates (parse()) or Dates to Strings (format()). You are using it to parse the String representation of a Date back to a Date. This can't be right, can it?
这篇关于将 Date 对象转换为日历对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
解析 ISO 8601 字符串本地日期时间,就像在 UTC 中Parsing an ISO 8601 string local date-time as if in UTC(解析 ISO 8601 字符串本地日期时间,就像在 UTC 中一样)
如何将公历字符串转换为公历?How to convert Gregorian string to Gregorian Calendar?(如何将公历字符串转换为公历?)
Java:GregorianCalendar 的最大值和最小值是什么/在哪Java: What/where are the maximum and minimum values of a GregorianCalendar?(Java:GregorianCalendar 的最大值和最小值是什么/在哪里?)
1582 年 10 月 15 日之前日期的日历到日期转换.公历Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar switch(1582 年 10 月 15 日之前日期的日历到日期转换
java日历setFirstDayOfWeek不起作用java Calendar setFirstDayOfWeek not working(java日历setFirstDayOfWeek不起作用)
Java:获取当前星期几的值Java: getting current Day of the Week value(Java:获取当前星期几的值)