2014-01-22 30 views
2

我正在使用'roo'gem来读取和分析xlsx文件。该文件包含一个start_time,它可能具有格式为06:00 AM的用户输入值。当文件上传时,我将参数转换为星期六,1899年12月30日或“1899-12-30”。我想知道是否以任何方式,我们可以得到实际的时间格式,文件中提到的用户,或者我们可以将可用参数转换为实际的文件单元格值。在Excel中读取ruby时间值

或者是否有任何格式或xlsx文件单元验证。

在此先感谢。

回答

1

这样就解决了,因为我将excel单元格格式更改为文本。

0

我发现Ruby中的xlsx阅读库(包括Roo)会得到错误的日期。这是不幸的,但也是可以理解的,因为excel使用'type'xml属性和格式化规则,这些规则在最好的情况下很尴尬,用户在最坏的情况下生成规则。

尽管如此,如果不是所有的时候都有可能获得最正确的结果,这就是为什么我写了simple_xml_reader。如果可能的话,使用它,否则你的解决方案将是最可靠的,因为通过我尝试使用以前存在的Ruby宝石的经验,它们只会在很短的时间内完成它,如果有的话。