PHP 또는 SHELL을 사용하여 Ubuntu에서 UTF-8을 CP1252로 변환하는 것에 관한 질문이 있습니다.우분투에서 UTF-8을 PHP 또는 bash 쉘로 변환
배경 : PHP 또는 SHELL을 사용하여 Ubuntu에서 UTF-8에서 CP1252로 csv 파일을 변환하고, 우분투에서 Windows로 파일을 복사하고, nodepad ++로 파일을 엽니 다.
환경 :
- 우분투 10.04
- PHP 5.3
- 문자로 파일 CSV (œ, A, C)
방법을 사용 :
PHP 사용
iconv("UTF-8", "CP1252", "content of file")
또는 내가 뭔가를 표시file -i name_of_the_file
에 생성 된 파일을 선택하면mb_convert_encoding("content of file", "UTF-8", "CP1252")
: 우측 하단에,name_of_the_file: text/plain; charset=iso-8859-1
나는 이것이 ++ 창에 파일을 변환하고 메모장을 열 복사를, 우리 인코딩이 ANSI
인 것을 볼 수 있습니다. ANSI에서 Windows-1252로 인코딩을 변경하면 특수 문자가 잘 표시됩니다.쉘
iconv -f UTF-8 -t CP1252" "content of file"
으로 나머지는 동일합니다.
질문 : 1. 왜 명령 파일을 직접 CP1252 또는 ANSI하지만이 ISO-8895-1을 표시하지 않았다? 2. ANSI에서 Windows-1252로 인코딩을 변경했을 때 특수 문자가 잘 표시되는 이유는 무엇입니까?
미리 감사드립니다.