UTF8로 win1250로 인코딩,하지만 난 그것을로드 할 때, 그것은 p��jemce
대신 příjemce
같은 문자가 (노트 분음 부호를.)변경 문자열은 내가 win1250을 인코딩 한 파일을로드하고있어
win1250에서 UTF8 로의 인코딩.
는 다음 코드$content = iconv('windows-1250', 'UTF-8', $content);
와 PHP에서 그것을 관리하지만 자바 스크립트에서 그것을 할 수없는입니다. 나는이
같은 (그래서 "인코딩 프록시"로 PHP를 사용할 수 없습니다)내가 (NPM)에 도서관 iconv-lite
및 text-encoding
를 사용하려 한 서버로 보내지 않고 클라이언트에서이 인코딩을 할 필요가
var reader = new FileReader();
reader.onload =() => {
var data = reader.result;
// iconv-lite
var buf = iconv.encode(data, 'win1250');
var str1 = iconv.decode(new Buffer(buf), 'utf8');
// text-encoding
var uint8array = new TextEncoder('windows-1250').encode(data);
var str2 = new TextDecoder('utf-8').decode(uint8array);
console.log(str1);
console.log(str2);
};
reader.readAsText(file);
하지만 실제로 인코딩을 올바르게 변경하지 않았습니다. 제가 빠진 것이 있습니까?
잘못된 방법으로 인코딩/디코딩하지 않았습니까? 귀하의 질문에 win1250에서 파일을 디코드하려고 시도하는 것처럼 들리며 utf-8로 처리합니까? –
예, win1250에있는 파일이 있는데 utf8이 되길 원합니다. 문제는 문자열에서 바이트로 "인코딩"하고 바이트에서 문자열로 "디코딩"한다는 것입니다. https://github.com/ashtuchkin/iconv-lite에서 더보기 – tebeix