- from dbfpy import dbf
- from time import sleep
- from win32com import client
- def dbf2xls(dbfilename, exfilename):
- db = dbf.Dbf(dbfilename, True)
- ex = client.Dispatch('Excel.Application')
- wk = ex.Workbooks.Add()
- ws = wk.ActiveSheet
- ex.Visible = True
- sleep(1)
- r = 1
- c = 1
- for field in db.fieldNames:
- ws.Cells(r,c).Value = field
- c = c+1
- r = 2
- for record in db:
- c = 1
- for field in db.fieldNames:
- ws.Cells(r,c).Value = record[field]
- c = c+1
- r = r+1
- wk.SaveAs(exfilename)
- wk.Close(False)
- ex.Application.Quit()
- db.close()
- if __name__=='__main__':
- dbffilename = "test.dbf"
- xlsfilename = "text.xls"
- dbf2xls(dbffilename, xlsfilename)
- #该片段来自于http://www.codesnippet.cn/detail/251220121184.html
来源: http://www.codesnippet.cn/detail/251220121184.html