'한글깨짐'에 해당되는 글 3건

허니몬의 IT 이야기/리눅스 이야기, 우분투
1. 우분투 소프트웨어 센터에서 'EasyTag' 를 검색하여 설치한다.

2. 프로그램 -> 음악과 비디오 -> EasyTag를 실행한다.

3. settings -> preference... 를 선택한다.
그림에서 보는 것처럼 설정을 변경한다. 하단에 있는 non-standart는 위의 ID3v2 tags, ID3v1 tags에서 해당사항이 없는 태그들에 대한 처리를 담당하는 설정이라고 한다. ^^; 참고문헌 : http://ubuntu.or.kr/viewtopic.php?p=59363

4. OK를 누르고, 음악 파일이 존재하는 폴더를 선택한다.
마우스 커서가 있는 버튼을 클릭하여 전체파일을 선택한 후에, 왼쪽으로 두번째에 있는 버튼(save file(s))를 클릭한다.

5. 그러면 아래와 같은 팝업창이 뜬다.

남자는 스트레이트!! 'Yes'를 클릭해서 무시하고 걍 고고씽 하자!!
목록에 있는 태그 내용들이 인코딩이 우분투와 리듬박스에서 인식할 수 있는 UTF-16 형태로 인코딩 되는 과정을 볼 수 있다.

6. 깨져서 보이던 태그가 정상적으로 보이는 걸 확인.

허니몬의 IT 이야기/리눅스 이야기, 우분투
SQL Developer 를 다운로드 받아서 설치를 했다.
2010/01/09 - [허니몬의 IT 이야기/허니몬의 리눅스 이야기, 우분투] - Ubuntu 9.10에서 Oracle SQLDeveloper 설치하기

신이 나서 노트북에도 설치를 하고 JDK 생성해서 실행했더니
  보는 것처럼 한글들이 박스로 표현되면서 깨지는 것을 확인할 수 있었다. 그래서 인터넷을 뒤적이면서 원인이 무엇인지 파악하는데 중점을 두었다.

참고자료 :
http://theduck.tistory.com/25
http://hajimaro.springnote.com/pages/3756683

JRE 실행 환경에 한글폰트가 설치되어 있지 않을 경우에 발생한다.
그래서 해결하는 방법은 간단하다.
# sudo mkdir $JAVA_HOME/jre/lib/fonts/fallback


명령으로 JRE 아래에 fallback 폴더를 생성한 후에 그 안에다가 한글폰트를 하나(현재 리눅스에서 설정된 폰트면 더욱 좋다)를 넣어준다.
그런 후에 실행하면


처럼 정상적으로 폰트가 적용된 것을 확인하여 볼 수 있을 것이다.

이렇게 해놓으면, JRE를 이용해서 실행설치되는 다른 설치프로그램이나 실행파일들도 정상적으로 한글이 나타날 것으로 보인다.




허니몬의 IT 이야기/프로그래머, '코드 엔지니어'
if ( keyword != null ) {
     String charset[] = {"euc-kr", "ksc5601", "iso-8859-1", "8859_1", "ascii"};
     
     for(int k=0; k<charset.length ; k++){
             for(int l=0 ; l<charset.length ; l++){
                     if(k==l){
                             continue;
                     }else{
                             System.out.println(charset[k]+" : "+charset[l]+" :"+new String(keyword.getBytes(charset[k]),charset[l])+"<br>");
                     }
             }
     }
   }

ㅡㅅ-);; charset 형만 알아내는 거지, 그거에 대한 반환타입이 없어서...
조건식에다가 쓸 수가 없잖아!!!

자바내에서는 받는 파라메타의 charset 이 무엇인지 알아내는 메소드는 없는 듯 합니다. ㅡㅅ-);;
위의 식은 받은 문자열(keyword)을 반복문을 돌려서 문자셋을 바꿔가면서 출력하는 코드입니다.

출력결과를 확인하고서 파라메터가 어떤 charset으로 들어오는지 확인하고서 거기에 맞춰서 처리를 해줘야 한다.
우리 프로젝트 처리를 진행하면서는 크게 쓸모는 없었다. 자바스크립트를 통해서 파라메터를 생성해서 받는 것은
ISO8895_1 타입으로 하는 걸 알고 있으니까, 특정 조건을 만족했을 때, 해당 파라메터를 인코딩하도록 만들어 처리했다.


선생님께 여쭈어 또다른 방법을 알아냈다. get 방식으로 파라메터를 전달하는 자바스크립트 방식일 경우에 유용하다.
예 : javascript:location.href="list.jsp?page=555&subpage=444  의 경우

          //searchform 폼에서 입력한 값이 있을 경우 넣어줄 것 불러오기
          if ((request.getMethod()).equalsIgnoreCase("get") && category != null && keyword != null ) {
              keyword = new String(keyword.getBytes("ISO8859_1"), "EUC_KR");
          }

request 의 method 방법을 알아내는 메소드(함수) getMethod() 를 이용해서 "get" 방식을 경우에 변환해주는 방법입니다.

또다른 방법은 <form method="post" action="">을 하나 만들어서 그 안에다가 <input type="hidden" name=""> 으로 해서  해서 form.submit() 방식으로 다음페이지에서 필요한 값들을 넘기는 방법이 있다.


AJAX 실행한 단계에서 다음 페이지에서는
equest.setCharacterEncoding("euc-kr"); 의 식으로 코딩을 지정해주면 글자가 깨진다는 점을 주의하라.


1
블로그 이미지

Email : ihoneymon@gmail.com 안녕하세요, 꿀괴물 입니다. ^^ 멋진 비행을 준비 하는 블로그 입니다. 만능형 인간이 되어 많은 이들에게 인정받고, 즐겁고 행복하게 살기를 간절히 원합니다!! 달콤살벌한 꿀괴물의 좌충우돌 파란만장한 여정을 지켜봐주세요!! ^^

허니몬