問題は、アプリケーションを実行していて、グリッド(文字列と日付列を含む)があり、Excelファイルとして保存している場合です。
初めて保存するとすべてが正しくフォーマットされますが、同じ正確なグリッドをもう一度保存しようとすると、日付のフォーマットがなくなります(右クリックしてdateTimeオブジェクトにフォーマットすると、単なる浮動小数点値になります)動作します)。アプリを再起動すると、初めてアプリが再び機能し、その後再びフォーマットが失われます
コードは次のようになります。
Calendar calendar = Calendar.getInstance();
calendar.setTime((Date)data);
Date gmtDate = new Date(((Date) data).getTime() + (calendar.get(Calendar.ZONE_OFFSET) + calendar.get(Calendar.DST_OFFSET)));
writableCell = new jxl.write.DateTime(sheetColumn, sheetRow, gmtDate, jxl.write.DateTime.GMT);
cellFormat = new jxl.write.WritableCellFormat (new jxl.write.DateFormat("m/d/yyyy h:mm");
writableCell.setCellFormat(cellFormat);
sheet.addCell(writableCell);
私はブレークポイントを維持し、すべてが本来あるべき状態であるため(dateTime
シートに入る前にタイプであることが常にわかっていました)、コードからのものではないと思います。
他の誰かがこの問題に遭遇しましたか?