将java日期转换为dbf FoxPro datetime格式
我试图在FoxPro规范中创建DBF文件,但我不知道如何插入日期。我不知道如何将java日期转换为: FoxPro的字段是2个32位整数:一个存储日期,另一个存储日期 以反向字节顺序存储时间。整数存储的日期 从公元前4712年1月1日开始的天数。时间整数存储数字 从00:00:00算起的毫秒数 使用JodaTime很容易获得天数和毫秒:将java日期转换为dbf FoxPro datetime格式,java,jodatime,foxpro,dbf,Java,Jodatime,Foxpro,Dbf,我试图在FoxPro规范中创建DBF文件,但我不知道如何插入日期。我不知道如何将java日期转换为: FoxPro的字段是2个32位整数:一个存储日期,另一个存储日期 以反向字节顺序存储时间。整数存储的日期 从公元前4712年1月1日开始的天数。时间整数存储数字 从00:00:00算起的毫秒数 使用JodaTime很容易获得天数和毫秒: DateTime start = new DateTime(-4713, 1, 1, 0, 0, 0, 0); DateTi
DateTime start = new DateTime(-4713, 1, 1, 0, 0, 0, 0);
DateTime end = new DateTime(2014, 1, 1, 0, 0, 0, 0);
Days days = Days.daysBetween(start, end);
long millis = end.getMillisOfDay();
但是如何将这些信息转换成所需的格式呢?
对于输入日期,我只使用:
SimpleDateFormat simpledateformat = new SimpleDateFormat("yyyyMMdd");
simpledateformat.format(date);
它的工作很好,但是当我尝试将datetime与“yyyyMMddHHmmss”一起使用时,我看到了非常糟糕的结果,比如17.08.33409 12:34:20(只有月份是正确的)。VFP同时具有日期和日期时间字段类型 用于插入日期的VFP语法为:
Insert into mytable (mydatefield) values ({^YYYY-MM-DD})
或
对于datetime(假设VFP中的字段是datetime)
或
因此,假设您可以从Java日期中提取年、月和日的文本表示形式,那么您可以从中构建VFP查询。我进行了相关编辑,但仍然无法理解问题出在哪里。
Insert into mytable (mydatefield) values (Date(YYYY,MM,DD))
Insert into mytable (mydatefield) values ({^YYYY-MM-DD HH:MM:SS})
Insert into mytable (mydatefield) values (DateTime(YYYY,MM,DD,HH,MM,SS))