我使用xlsxwriter包从django项目(完全从我的模型中)获取excel输出。 这些是我的字段:
date1 = models.DateField(default=datetime.date.today)
date2 = models.DateField(null=True,blank=True)
所有字段的输出已完全正确地嵌入到Excel中,唯一的问题是DateField
的字段未正确输出。这些字段的输出:
43603
我该如何解决该问题?
答案 0 :(得分:1)
我终于找到了答案!
我阅读了有关xlsxwriter
的更多信息,并且还阅读了this文档。写在这里:
Excel中的日期和时间用实数表示,例如 数字41275.5代表“ 2013年1月1日下午12:00”。
数字的整数部分存储自 纪元和小数部分存储一天的百分比。
最后是答案:
要将数字显示为日期,必须应用Excel数字格式
以下是一些示例:
import xlsxwriter
workbook = xlsxwriter.Workbook('date_examples.xlsx')
worksheet = workbook.add_worksheet()
# Widen column A for extra visibility.
worksheet.set_column('A:A', 30)
# A number to convert to a date.
number = 41333.5
# Write it as a number without formatting.
worksheet.write('A1', number) # 41333.5
format2 = workbook.add_format({'num_format': 'dd/mm/yy'})
worksheet.write('A2', number, format2) # 28/02/13
format3 = workbook.add_format({'num_format': 'mm/dd/yy'})
worksheet.write('A3', number, format3) # 02/28/13
workbook.close()