.csv 파일의 디렉토리를 .xls 또는 .xlsx 형식으로 빠르게 변환하는 방법을 찾고 있습니다 (또는 할 수 있으면 좋을 것입니다).
이 작업을 수행하는 쉬운 방법이 있습니까, 아니면 타사 프로그램을 설치해야합니까?
.csv 파일의 디렉토리를 .xls 또는 .xlsx 형식으로 빠르게 변환하는 방법을 찾고 있습니다 (또는 할 수 있으면 좋을 것입니다).
이 작업을 수행하는 쉬운 방법이 있습니까, 아니면 타사 프로그램을 설치해야합니까?
답변:
파이썬을 좋아하고 가지고 있다고 가정하면 (어떤 이유로 든) 내가 작성한 스크립트를 사용할 수 있습니다.
import os
import glob
import csv
import xlwt # from http://www.python-excel.org/
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = xlwt.Workbook()
ws = wb.add_sheet('data')
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, val in enumerate(row):
ws.write(r, c, val)
wb.save(csvfile + '.xls')
모든 CSV 파일이있는 디렉토리를 실행하면 파일이 모두 변환되고 ".xls"가 끝납니다.
최대 약 1 개의 Mrow를 지원하는 Excel 2007+ (xlsx 파일)의 경우 :
import os
import glob
import csv
import openpyxl # from https://pythonhosted.org/openpyxl/ or PyPI (e.g. via pip)
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = openpyxl.Workbook()
ws = wb.active
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader, start=1):
for c, val in enumerate(row, start=1):
ws.cell(row=r, column=c).value = val
wb.save(csvfile + '.xlsx')
귀하의 질문에 언급되지 않은 것이 많이 있습니다.
CVS 파일이 다음과 유사한 디렉토리 구조에 있다고 가정
c:\randompath\CSV\
a.csv
b.csv
c.csv
:
:
z.csv
그리고 당신은 결국
c:\randompath\XLS\
a.xls
b.xls
c.xls
:
:
z.xls
나는 당신이하고자하는 선행 작업 대 청소 작업의 비율에 따라 갈 세 가지 경로를 생각할 수 있습니다.
이 작업을 수행하기 위해 코드를 작성하지는 않았지만 아직 시작점에 대한 아이디어를 제공하고 있습니다. 아마도 당신이 원하는 것에 대해 더 자세한 정보를 줄 수 있다면 나 또는 다른 포럼 회원의 접근 방식을 다루는 방법에 대한 자세한 설명을 얻을 수 있습니다.
Windows의 경우? CoolUtils " Total CSV Converter "명령 행 버전은 JSON, Access, DBF, XML 및 SQL을 포함한 많은 출력 형식 을 지원하며 40 달러에 불과합니다. 하위 디렉토리를 재귀하고, 원본 CSV 파일을 삭제하고, 모든 파일을 하나의 문서에 결합하는 등의 작업을 수행 할 수 있습니다.
http://www.coolutils.com/TotalCSVConverter
CSVConverter.exe <source> <destination> <options>
" 고급 CSV 변환기 "($ 40-200)는 Excel을 설치하지 않고도 신속하게 수행 할 수있는 휴대용 EXE입니다.
http://www.dbf2002.com/csv-converter/commandline.html
"c:\Program Files\CSV Converter\csvcnv.exe" c:\base\*.csv c:\exports\ /TOXLSX /SRCHDR
SoftInterface의 " XLS 변환 "은 Excel을 사용할 수 있지만 (필수는 아님) 더 비싸지 만 ($ 500 +) 더 많은 형식을 지원하며 더 많은 옵션이 있습니다.
http://www.softinterface.com/Convert-XLS/Convert-XLS.htm
"c:\Program Files (x86)\Softinterface, Inc\Convert XLS\ConvertXLS.exe" /V /S"c:\base\*.csv" /T"c:\exports\*.xlsx" /F6 /C51 /M2
" Gnumeric "은 직접 변환을 수행 할 수있는 오픈 소스 스프레드 시트 프로그램이지만 2014 년 8 월에 Windows 용으로 중단되었습니다.
ssconvert file.csv file.xlsx
Python을 설치 한 경우 " csv2odf "는 오픈 소스 옵션이며 템플릿 방식을 사용하여 ods, odt, html, xlsx 또는 docx 파일을 생성합니다.
http://sourceforge.net/projects/csv2odf/
csv2odf data.csv template.odt output.xlsx
Node 8 이상 및 bash :
npm install -g pguardiario/csv2xlsx
for file in *.csv; do csv2xlsx "$file"; done