跳至內容
選單
此問題已被標幟
1 回覆
17220 瀏覽次數

Guys,

Suppose I have a binary filed to upload xls file.

data = fields.Binary()

My requirement is I want to get the values of xls in a python function as a Two dimensional list.

[  [row1], [row2], [row3], [row4],.... ]

Is this possible  ... ?

or another way ?

頭像
捨棄
最佳答案

 Use xlrd to read the file as given below. I have done it in odoo9. You may try this.

from xlrd import open_workbook
import base64

def read_excel(self):
    wb = open_workbook(file_contents = base64.decodestring(obj.data))
    sheet = wb.sheets()[0]

    for s in wb.sheets():

         values = []

         for row in range(s.nrows):

             col_value = []

             for col in range(s.ncols):

                 value  = (s.cell(row,col).value)

                 try : value = str(int(value))

                 except : pass

                 col_value.append(value)

             values.append(col_value)

     print values

頭像
捨棄
作者

Excellent !!!

Thank u Sebin, This is what I expected .

You are welcome Shameem.

obj should be your object in which you are using the binary field to save the xls file

相關帖文 回覆 瀏覽次數 活動
2
7月 25
4616
2
12月 24
7768
2
11月 24
28531
2
5月 24
7477
3
3月 24
6908