Mon but est de convertir les fichiers csv localisés dans un répertoire en fichiers xls.Format modifié lors de la conversion de csv en xls en Python
Mes fichiers csv sont notamment composés d'une ligne "mark" (par exemple 1.0000, 2.0000 ...) et d'une ligne "date" (par exemple 26/04/2013). Le format de ces deux lignes est très important pour moi.
-je utiliser le code suivant:
import sys, csv, xlwt, glob, os
import shutil
def cont_directory():
return glob.glob('/home/julien/excel/csv/*.csv')
liste = cont_directory()
try:
for i in liste:
f=open(i, 'rb')
g = csv.reader ((f), delimiter = ";")
workbook=xlwt.Workbook()
sheet= xlwt.Workbook()
sheet = workbook.add_sheet("To be modified")
for rowi, row in enumerate(g):
for coli, value in enumerate(row):
sheet.write(rowi,coli,value)
workbook.save(i + ".xls")
except:
print "epic_fail_Conversion", sys.exc_info()
for i in glob.glob ('/home/julien/excel/csv/*.xls'):
shutil.copy2 (i, '/home/julien/excel/xls')
try:
for j in glob.glob('/home/julien/excel/xls/*.xls'):
os.rename (j, j.replace ('.csv', ''))
except:
print "epic_fail_Conversion", sys.exc_info()
print "End"
Ce code fonctionne assez bien et j'ai mes nouveaux fichiers Excel.
Le problème est que mes lignes ont été modifiées pendant cette conversion. Par exemple le contenu de la ligne "mark" est 1 au lieu de 1.00000. Par ailleurs, le contenu de la ligne "date" est le 2013/04/26 au lieu du 26/04/2013.
Savez-vous ce que je pourrais faire, afin de conserver les lignes de format initial de mes fichiers csv?
Merci beaucoup.
Cette entrée de blog peut vous aider: http://www.youlikeprogramming.com/2011/04/examples-generating-excel-documents-using-pythons-xlwt/ – ditkin