Skip to content

Instantly share code, notes, and snippets.

@xingkaixin
Last active August 29, 2015 14:06
Show Gist options
  • Save xingkaixin/3611fb91aff81df9ec7e to your computer and use it in GitHub Desktop.
Save xingkaixin/3611fb91aff81df9ec7e to your computer and use it in GitHub Desktop.
csv2xls sample

chmod +x csv2xls.py ./csv2xls.py

python csv2xls.py

可以处理编码为GBK和UTF-8的CSV文件

#!/usr/bin/python
# -*- coding: utf-8 -*-
import csv
import xlwt
import os
import sys
def cvstran2xls(filename):
with open(filename,'rb') as f:
reader = csv.reader(f)
cvscontent = []
for row in reader:
try:
cvscontent.append([x.decode('utf-8') for x in row])
except:
cvscontent.append([x.decode('gbk') for x in row])
file = xlwt.Workbook()
table = file.add_sheet('sheet1',cell_overwrite_ok = True)
for row in range(len(cvscontent)):
for col in range(len(cvscontent[row])):
table.write(row,col,cvscontent[row][col])
file.save(os.path.splitext(filename)[0]+'.xls')
print os.path.splitext(filename)[0]+'.xls','OK'
# if __name__ == '__main__':
# print sys.argv[1],'Ready'
# cvstran2xls(sys.argv[1])
cvstran2xls('test.csv')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment