libreoffice를 사용하여 인코딩 지정 --CSV로 변환


11

다음을 사용하여 Excel 파일을 CSV로 변환 할 수 있습니다.

$ libreoffice --convert-to csv --headless --outdir dir file.xlsx

모든 것이 잘 작동하는 것 같습니다. 그러나 인코딩은 이상한 것으로 설정되어 있습니다. LibreOffice Calc에서 수동으로 "다른 이름으로 저장"을하면 UTF-8 mdash (—) 대신 \ 227 ( )이 표시됩니다. CSV에서 파일 을 사용하면 "매우 긴 행이있는 비 ISO 확장 ASCII 텍스트"가 표시됩니다. 따라서 두 가지 질문이 있습니다.

  1. 지구상에서 무슨 일이 일어나고 있습니까?
  2. libreoffice에 UTF-8로 변환하도록 지시하려면 어떻게해야합니까?

변환하려는 특정 파일은 여기에 있습니다 .

답변:


8

분명히 LibreOffice은 (는) 기본적으로 ISO-8859-1을 사용하려고 시도하여 문제를 일으 킵니다. 이 버그 보고서에 대한 응답으로 새로운 매개 변수 --infilter가 추가되었습니다. 다음 명령은 U + 2014 em 대시를 생성합니다 .

libreoffice  --convert-to csv --infilter=CSV:44,34,76,1 --headless --outdir dir file.xlsx

LO 5.0.3.2로 이것을 테스트했습니다. 버그 보고서에서이 옵션을 포함하는 가장 초기 버전은 LO 4.4 인 것 같습니다.

참조 : https://ask.libreoffice.org/en/question/13008/how-do-i-specify-an-input-character-coding-for-a-convert-to-command-line-usage/


감사! 그래도 여전히 성공하지 못했습니다. 이 명령 행으로 : libreoffice --headless --convert-to csv --infilter = CSV : 44,34,76,1 file.xlsx --outdir dir; em 대시의 경우 여전히 0x97입니다. 당황했습니다. 우분투 14.04에서 LO 4.2.8.2 420m0 (빌드 : 2)을 실행 중입니다.
Scott Deerwester

내 대답에서 언급했듯이 LO 4.4 이상으로 업그레이드해야 할 수도 있습니다.
Jim K

1
loffice --convert-to xlsx --infilter=csv:44,34,76 input.csv나를 위해 일했다. 참조 .
Adobe

이러한 infilter옵션이 나열된 링크가 있습니까? @Adobe가 게시 한 링크는 오래되었습니다.
kebs

--infilter이것은 입력 파일에 관한 것으로 보이며 @Adobe의 명령이 작동하는 이유 (CSV 입력)와 OP의 명령 (XLSX 입력)이 추측하지 않는 것입니다.
golimar

1

시도해 볼 수 있습니다

    $ libreoffice --convert-to \
    > csv:"Text - txt - csv (StarCalc)":"44,34,0,1,,0" \
    > --headless --outdir dir file.xlsx 

여기 에 대한 자세한 도움말이 있습니다.


답장을 보내 주셔서 감사합니다. 여전히 추가 토큰을 수락하지 않습니다. --csv : Text-txt-csv (StarCalc) : 44,34,76,1,, 0 "로 변환 --csv : Text-txt-csv (StarCalc) : 44,34,76,1,1 / 2 / 2 / 2 / 3 / 3 / 2 / 4 / 2 / 5 / 2 / 6 / 2 / 7 / 2 / 8 / 2 / 9 / 1 / 10 / 3 "및 다양한 다른 조합. 어떤 제안?
Scott Deerwester

csv:"Text - txt - csv (StarCalc)":"44,34,0,1,,0", csv :"이중 인용" :"이중 인용"
xae

그것은 쉘과 관련이있을 뿐이지 만 어쨌든 동일한 결과로 시도했습니다.
Scott Deerwester

여기에 사용하는 unoconv직접 soffice관련 작업을 위해, 어쩌면 도움이 될 수.
xae
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.