2016-07-04 2 views
2

이 코드를 사용하여 xlswriter 기능 단위를 테스트합니다.xlsxwriter가 손상된 파일을 만듭니다.

import xlsxwriter 
# -*- coding: utf-8-sig-*- 
workbook = xlsxwriter.Workbook("filename.xlsx") 
worksheet = workbook.add_worksheet() 
worksheet.add_table(0,0, 1, 11,{'columns': [{'header': 'ID'}, 
              {'header': '1'}, 
              {'header': u'ééé'}, 
              {'header': 'M'}, 
              {'header': 'C'}, 
              {'header': 'P'}, 
              {'header': u'o'}, 
              {'header': 'Pe'}, 
              {'header': 'F'}, 
              {'header': u'l'}, 
              {'header': 'C'}, 
              {'header': 'f'} 
              ]}) 
workbook.close() 

Excel에서 파일을 해석하는 중 불평하고 있습니다. 수리를 수락하면 내용이 예상대로 유지됩니다.

업데이트 : 나는이 최소한의 코드와 같은 문제가 있습니다 :

import xlsxwriter 



workbook = xlsxwriter.Workbook("filename.xlsx") 
worksheet = workbook.add_worksheet("hi") 
worksheet.add_table(0,0, 1, 2,{'columns': [{'header': 'ID'}, 
              {'header': '1'}, 
              {'header': '1'}]}) 
workbook.close() 
+0

https://github.com/jmcnamara/XlsxWriter/issues/65 해 보셨습니까? –

+0

네, "é"와 같은 특별한 문자가 없어도 똑같은 문제가 생겼습니다. – isoman

+0

음 ... 분명히 잘못된 것을 볼 수는 없습니다. (그렇지만 저는 'xlswriter'전문가가 아닙니다.) 여기에 답변을 얻지 못했습니다. 개발자는 적극적으로 [google 그룹] (https://groups.google.com/forum/#!forum/python-excel)에 연락 할 수 있습니다. –

답변

3

두 번째 예제의 문제는 Excel이 같은 대소 문자를 구별 값이 테이블 헤더를 허용하지 않는다는 것입니다 (이 경우 "1"). 다음은 작동합니다 :

import xlsxwriter 

workbook = xlsxwriter.Workbook("filename.xlsx") 
worksheet = workbook.add_worksheet("hi") 

worksheet.add_table(0, 0, 1, 2,{'columns': [{'header': 'ID'}, 
              {'header': '1'}, 
              {'header': '2'}]}) 
workbook.close() 

XlsxWriter에서 이에 대한 경고가 있어야하지만 지금까지는 알지 못했습니다. 다음 릴리스에서 수표를 추가하겠습니다. (issue #362로 Github에서에 추적.) 당신이 'C''F'/'f'라는 두 개의 제목이 있기 때문에

이것은 또한 첫 번째 예에서 문제처럼 보인다 - Excel이 경우 소문자를 구별 고유 할 헤더 이름을 필요로합니다.