우리는 수천 개의 text/html 파일을 가진 CMS를 가지고 있습니다. 사용자가 다양한 문자 인코딩 (utf-8, utf-8 w BOM, windows 1252, iso-8859-1)을 사용하여 text/html 파일을 업로드하고있는 것으로 나타났습니다.텍스트 콘텐츠를 Java에서 UTF 8로 정규화하는 방법
이러한 파일을 읽고 응답에 기록하면 CMS의 프레임 워크는 응답의 content-type 속성에서 charset = UTF-8을 강제합니다.
따라서 "UTF-8"문자 인코딩에서 올바른 문자 변환이없는 경우 UTF-8이 아닌 모든 콘텐츠가 사용자에게 표시됩니다 (꺾쇠 괄호 문자, 검은 색 다이아몬드 등). 또한, charset을 나타내는 이러한 문서에 첨부 된 메타 데이터가 없습니다. 필자가 알고있는 한, charset이 무엇인지 알 수있는 유일한 방법은 텍스트 렌더링 응용 프로그램 (Firefox, Notepadd ++ 등)에서 해당 문자를보고 "look "콘텐츠가"보이는 것 "인지 확인하십시오.
알 수없는 인코딩 파일을 자동으로/지능적으로 UTF-8로 변환하는 방법을 아는 사람이 있습니까? 나는 이것이 통계적 모델링으로 수행 될 수 있다는 것을 읽었지만 내 머리 위에 무엇이 있는지를 알았다.
문제를 가장 잘 해결하는 방법에 대해 생각해보십시오.
감사합니다.
관련 질문 : http://stackoverflow.com/questions/774075/character-encoding-detection-algorithm 및 http://stackoverflow.com/questions/499010/java-how-to-determine-the-correct- charset-of-stream-of-stream – BalusC