|
From: <ma...@us...> - 2006-09-16 16:51:04
|
Revision: 183
http://svn.sourceforge.net/objectlabkit/?rev=183&view=rev
Author: marchy
Date: 2006-09-16 09:49:25 -0700 (Sat, 16 Sep 2006)
Log Message:
-----------
Fixed the excel date problem in joda in other timezones
Modified Paths:
--------------
trunk/datecalc-joda/src/main/java/net/objectlab/kit/datecalc/joda/JodaExcelDateUtil.java
trunk/datecalc-joda/src/test/java/net/objectlab/kit/datecalc/joda/DateTimeExcelDateUtilTest.java
Modified: trunk/datecalc-joda/src/main/java/net/objectlab/kit/datecalc/joda/JodaExcelDateUtil.java
===================================================================
--- trunk/datecalc-joda/src/main/java/net/objectlab/kit/datecalc/joda/JodaExcelDateUtil.java 2006-09-15 06:53:50 UTC (rev 182)
+++ trunk/datecalc-joda/src/main/java/net/objectlab/kit/datecalc/joda/JodaExcelDateUtil.java 2006-09-16 16:49:25 UTC (rev 183)
@@ -17,7 +17,7 @@
*/
package net.objectlab.kit.datecalc.joda;
-import java.util.Date;
+import java.util.Calendar;
import net.objectlab.kit.datecalc.common.ExcelDateUtil;
@@ -39,26 +39,39 @@
}
public static LocalDate getLocalDate(final double date, final boolean use1904windowing) {
- final Date javaDate = ExcelDateUtil.getJavaDate(date, use1904windowing);
- if (javaDate == null) {
+ final Calendar c = ExcelDateUtil.getJavaCalendar(date, use1904windowing);
+
+ if (c == null) {
return null;
}
- return new LocalDate(javaDate);
+
+ return new LocalDate()
+ .withYear(c.get(Calendar.YEAR))
+ .withMonthOfYear(c.get(Calendar.MONTH) + 1)
+ .withDayOfMonth(c.get(Calendar.DAY_OF_MONTH));
}
public static YearMonthDay getYearMonthDay(final double date, final boolean use1904windowing) {
- final Date javaDate = ExcelDateUtil.getJavaDate(date, use1904windowing);
- if (javaDate == null) {
+ final Calendar c = ExcelDateUtil.getJavaCalendar(date, use1904windowing);
+
+ if (c == null) {
return null;
}
- return new YearMonthDay(javaDate);
+
+ return new YearMonthDay(c.get(Calendar.YEAR), c.get(Calendar.MONTH) + 1, c.get(Calendar.DAY_OF_MONTH));
}
public static DateTime getDateTime(final double date, final boolean use1904windowing) {
- final Date javaDate = ExcelDateUtil.getJavaDate(date, use1904windowing);
- if (javaDate == null) {
+ final Calendar c = ExcelDateUtil.getJavaCalendar(date, use1904windowing);
+
+ if (c == null) {
return null;
}
- return new DateTime(javaDate);
+
+ return new DateTime()
+ .withYear(c.get(Calendar.YEAR))
+ .withMonthOfYear(c.get(Calendar.MONTH) + 1)
+ .withDayOfMonth(c.get(Calendar.DAY_OF_MONTH))
+ .withMillisOfDay(0);
}
}
Modified: trunk/datecalc-joda/src/test/java/net/objectlab/kit/datecalc/joda/DateTimeExcelDateUtilTest.java
===================================================================
--- trunk/datecalc-joda/src/test/java/net/objectlab/kit/datecalc/joda/DateTimeExcelDateUtilTest.java 2006-09-15 06:53:50 UTC (rev 182)
+++ trunk/datecalc-joda/src/test/java/net/objectlab/kit/datecalc/joda/DateTimeExcelDateUtilTest.java 2006-09-16 16:49:25 UTC (rev 183)
@@ -1,7 +1,6 @@
package net.objectlab.kit.datecalc.joda;
import net.objectlab.kit.datecalc.common.AbstractExcelDateUtilTest;
-import net.objectlab.kit.datecalc.common.Utils;
import org.joda.time.DateTime;
@@ -9,7 +8,7 @@
@Override
protected DateTime createDate(final String str) {
- return new DateTime(Utils.createDate(str));
+ return new DateTime(str);
}
@Override
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|