Les fichiers Excel peuvent être convertis en CSV en utilisant:
$ libreoffice --convert-to csv --headless --outdir dir file.xlsx
Tout semble bien fonctionner. L'encodage, cependant, est réglé sur quelque chose de chancelant. Au lieu d'un mdash UTF-8 (-) que j'obtiens si je fais un "enregistrer sous" manuellement depuis LibreOffice Calc, cela me donne un \ 227 ( ). L'utilisation du fichier sur le CSV me donne "du texte ASCII étendu non ISO, avec de très longues lignes". Donc, deux questions:
- Que se passe-t-il ici?
- Comment dire à libreoffice de convertir en UTF-8?
Le fichier spécifique que j'essaie de convertir est ici .
la source
loffice --convert-to xlsx --infilter=csv:44,34,76 input.csv
travaillé pour moi. Référence .infilter
options sont répertoriées? Le lien publié par @Adobe est obsolète depuis longtemps.--infilter
semble concerner le fichier d'entrée et c'est pourquoi la commande @Adobe fonctionne (entrée CSV) et la commande OP (entrée XLSX) ne fait pas - juste une suppositionTu pourrais essayer,
Ici , vous avez une aide très détaillée sur.
la source
csv:"Text - txt - csv (StarCalc)":"44,34,0,1,,0"
, csv:
"double quoted":
"double quoted"unoconv
et directementsoffice
pour une tâche connexe, peut-être pourrait aider.