2016-05-15 44 views
2

我有一个允许用户上传xlsx文件的django服务器,我想访问它中的数据。如何阅读在Django中上传的xlsx文件?

我知道openpyxl,但是,它看起来像没有办法解析打开的文件,我不想将文件保存在磁盘上并再次阅读。

我该怎么办?

+0

你必须编写自己的代码的zip压缩包传递到openpyxl。更好地保存在某个地方。 –

回答

2

将其作为字节流进行阅读。 This explanation帮我完成同样的任务 我的解决办法:

from openpyxl import load_workbook 
    from io import BytesIO 
    ... 
    if request.method == 'POST': 
     form = UploadForm(request.POST, request.FILES) 
     if form.is_valid(): 
      file_in_memory = request.FILES['file'].read() 
      wb = load_workbook(filename=BytesIO(file_in_memory))