HSSFCell makes sense.  Patch away.

-- Glen

----- Original Message -----
From: "Jason Hoffman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, May 03, 2002 10:12 PM
Subject: Re: Dates!!


> Glen,
>
> If this method was to be added to POI ( assuming you haven't already
> done it ) would you have any preference as to its location.  Personally,
> I think it makes sense in HSSFCell, but wanted to get a blessing before
> creating the patch.  Any thoughts?
>
> Glen Stampoultzis wrote:
>
> >Okay, I've done some investigation of this.  Looks like your date has
been
> >defined as a custom format.
> >
> >Not sure what you can do about that one.  There's really nothing there
> >except the format string to tell whether it's a date or not and
> >unfortunately the format string can take many forms.
> >
> >Regards,
> >
> >Glen
> >
> >----- Original Message -----
> >From: "Agarwal, Vinay (Cognizant)" <[EMAIL PROTECTED]>
> >To: <[EMAIL PROTECTED]>
> >Cc: <[EMAIL PROTECTED]>
> >Sent: Friday, May 03, 2002 2:46 PM
> >Subject: RE: Dates!!
> >
> >
> >>Yeah sure....
> >>It's fmc_sample.xls
> >>
> >>
> >>-----Original Message-----
> >>From: Glen Stampoultzis [mailto:[EMAIL PROTECTED]]
> >>Sent: Friday, May 03, 2002 9:58 AM
> >>To: [EMAIL PROTECTED]
> >>Subject: Re: Dates!!
> >>
> >>
> >>Must be an undocumented format.  Are you able to send a sample
> >>
> >spreadsheet?
> >
> >>(Either to the list or [EMAIL PROTECTED] if you don't want the whole
world
> >>seeing your workbook).
> >>
> >>Thanks,
> >>
> >>Glen
> >>
> >>----- Original Message -----
> >>From: "Agarwal, Vinay (Cognizant)" <[EMAIL PROTECTED]>
> >>To: <[EMAIL PROTECTED]>
> >>Sent: Friday, May 03, 2002 2:27 PM
> >>Subject: RE: Dates!!
> >>
> >>
> >>>Date format in excel looks like '01-Jan-94'
> >>>
> >>>-----Original Message-----
> >>>From: Glen Stampoultzis [mailto:[EMAIL PROTECTED]]
> >>>Sent: Friday, May 03, 2002 9:44 AM
> >>>To: [EMAIL PROTECTED]
> >>>Subject: Re: Dates!!
> >>>
> >>>
> >>>What does your date format look like in Excel?
> >>>
> >>>-- Glen
> >>>
> >>>----- Original Message -----
> >>>From: "Agarwal, Vinay (Cognizant)" <[EMAIL PROTECTED]>
> >>>To: <[EMAIL PROTECTED]>
> >>>Sent: Friday, May 03, 2002 2:13 PM
> >>>Subject: RE: Dates!!
> >>>
> >>>
> >>>>It doesn't work for me......
> >>>>Interesting tning is when I add one more case to your list of cases
> >>>>
> >,it
> >
> >>>>works.
> >>>>
> >>>>I added case 165: and it worked....
> >>>>
> >>>>Something like this...
> >>>>
> >>>> switch(i) {
> >>>>                // Internal Date Formats as described on page 427 in
> >>>>Microsoft Excel Dev's Kit...
> >>>>                case 0x0e:
> >>>>                case 0x0f:
> >>>>                case 0x10:
> >>>>                case 0x11:
> >>>>                case 0x12:
> >>>>                case 0x13:
> >>>>                case 0x14:
> >>>>                case 0x15:
> >>>>                case 0x16:
> >>>>                case 0x2d:
> >>>>                case 0x2e:
> >>>>                case 0x2f:
> >>>>                case 165:         // IT WORKS HERE IN THIS CASE
> >>>>                    bDate = true;
> >>>>                    break;
> >>>>                default:
> >>>>                    bDate = false;
> >>>>                    break;
> >>>>
> >>>>Any answers to this......
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>-----Original Message-----
> >>>>From: Hoffman, Jason [mailto:[EMAIL PROTECTED]]
> >>>>Sent: Thursday, May 02, 2002 6:15 PM
> >>>>To: '[EMAIL PROTECTED]'
> >>>>Subject: RE: Dates!!
> >>>>
> >>>>
> >>>>Okay, here is a little code I used to determine if the cell was a
> >>>>
> >number
> >
> >>>or
> >>>
> >>>>date, and then format appropriately.  I hope it helps.  I keep meaning
> >>>>
> >>to
> >>
> >>>>submit a patch with the helper method below.... but just haven't had a
> >>>>chance.
> >>>>
> >>>>/////// code snippet ////////////
> >>>>case HSSFCell.CELL_TYPE_NUMERIC:
> >>>>                  double d = cell.getNumericCellValue();
> >>>>                  // test if a date!
> >>>>                  if (isCellDateFormatted(cell)) {
> >>>>                    // format in form of M/D/YY
> >>>>                    cal.setTime(HSSFDateUtil.getJavaDate(d));
> >>>>                    cellText =
> >>>>
> >>>(String.valueOf(cal.get(Calendar.YEAR))).substring(2);
> >>>
> >>>>                    cellText = cal.get(Calendar.MONTH)+1 + "/" +
> >>>>                               cal.get(Calendar.DAY_OF_MONTH) + "/" +
> >>>>                               cellText;
> >>>>                  }
> >>>>/////// end code snippet ////////////
> >>>>
> >>>>// HELPER METHOD BELOW TO DETERMINE IF DATE
> >>>>
> >>>>// method to determine if the cell is a date, versus a number...
> >>>>public static boolean isCellDateFormatted(HSSFCell cell) {
> >>>>    boolean bDate = false;
> >>>>
> >>>>    double d = cell.getNumericCellValue();
> >>>>    if ( HSSFDateUtil.isValidExcelDate(d) ) {
> >>>>      HSSFCellStyle style = cell.getCellStyle();
> >>>>      int i = style.getDataFormat();
> >>>>      switch(i) {
> >>>>        // Internal Date Formats as described on page 427 in Microsoft
> >>>>
> >>>Excel
> >>>
> >>>>Dev's Kit...
> >>>>        case 0x0e:
> >>>>        case 0x0f:
> >>>>        case 0x10:
> >>>>        case 0x11:
> >>>>        case 0x12:
> >>>>        case 0x13:
> >>>>        case 0x14:
> >>>>        case 0x15:
> >>>>        case 0x16:
> >>>>        case 0x2d:
> >>>>        case 0x2e:
> >>>>        case 0x2f:
> >>>>         bDate = true;
> >>>>        break;
> >>>>
> >>>>        default:
> >>>>         bDate = false;
> >>>>        break;
> >>>>      }
> >>>>    }
> >>>>    return bDate;
> >>>>  }
> >>>>
> >>>>-----Original Message-----
> >>>>From: Agarwal, Vinay (Cognizant) [mailto:[EMAIL PROTECTED]]
> >>>>Sent: Thursday, May 02, 2002 5:22 AM
> >>>>To: [EMAIL PROTECTED]
> >>>>Subject: Dates!!
> >>>>
> >>>>
> >>>>Hi, I am not sure if this is a bug .
> >>>>    I am trying to read a xls file which has a cell with Date format.
> >>>>    I have used EventExample.java for this purpose. What is happening
> >>>>
> >is
> >
> >>>>that
> >>>>instead of date it returns me a number. I looked at the APIs for
> >>>>
> >>>DateRecord
> >>>
> >>>>but
> >>>>there isn't such class. I am just wondering how to get around this
> >>>>
> >>>problem,I
> >>>
> >>>>am
> >>>>aware that Excel stores dates as numbers and probably i am getting
> >>>>
> >that
> >
> >>>>number.
> >>>>
> >>>>Why dont we have DateRecord class similar to NumericRecord.
> >>>>
> >>>
> >>
> >>
> >
> >
> >
>
>
>


Reply via email to