Error: Unsupported format, or corrupt file: Expected BOF record

user2353003 picture user2353003 · May 12, 2013 · Viewed 68.7k times · Source

I am trying to open a xlsx file and just print the contents of it. I keep running into this error:

import xlrd
book = xlrd.open_workbook("file.xlsx")
print "The number of worksheets is", book.nsheets
print "Worksheet name(s):", book.sheet_names()
print

sh = book.sheet_by_index(0)

print sh.name, sh.nrows, sh.ncols
print

print "Cell D30 is", sh.cell_value(rowx=29, colx=3)
print

for rx in range(5):
    print sh.row(rx)
    print

It prints out this error

raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found    '\xff\xfeT\x00i\x00m\x00'

Thanks

Answer

Mike Chan picture Mike Chan · Dec 7, 2016

If you use read_excel() to read a .csv you will get the error

XLRDError: Unsupported format, or corrupt file: Expected BOF record;

To read .csv one needs to use read_csv(), like this

df1= pd.read_csv("filename.csv")