Los archivos de Excel se pueden convertir a CSV usando:
$ libreoffice --convert-to csv --headless --outdir dir file.xlsx
Todo parece funcionar bien. La codificación, sin embargo, se establece en algo inestable. En lugar de un UTF-8 mdash (-) que obtengo si hago un "guardar como" manualmente desde LibreOffice Calc, me da un \ 227 ( ). Usar el archivo en el CSV me da "Texto ASCII extendido no ISO, con líneas muy largas". Entonces, dos preguntas:
- ¿Qué demonios está pasando aquí?
- ¿Cómo le digo a libreoffice que convierta a UTF-8?
El archivo específico que estoy tratando de convertir está aquí .
fuente
loffice --convert-to xlsx --infilter=csv:44,34,76 input.csv
trabajó para mi. Referencia .infilter
se enumeran estas opciones? El enlace publicado por @Adobe está desactualizado.--infilter
parece ser sobre el archivo de entrada y esa sería la razón por la cual el comando de @Adobe funciona (entrada CSV) y el comando del OP (entrada XLSX) no es, solo una suposiciónTu podrías intentar,
Aquí tienes una ayuda muy detallada sobre.
fuente
csv:"Text - txt - csv (StarCalc)":"44,34,0,1,,0"
, csv:
"doble cita":
"doble cita"unoconv
y directamentesoffice
para una tarea relacionada, tal vez podría ayudar.