250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Tomcat
- spring
- jpa
- AJAX
- SpringBoot
- 오픈소스
- JavaScript
- myBatis
- Python
- IntelliJ
- ubuntu
- 설정
- PostgreSQL
- Core Java
- oracle
- Spring Boot
- Source
- JDBC
- Open Source
- git
- error
- maven
- MSSQL
- Docker
- STS
- Thymeleaf
- MySQL
- Exception
- 문서
- Eclipse
Archives
- Today
- Total
헤르메스 LIFE
[Source] Unicode 2.0 을 Unicode 1.2 로 변환 본문
728x90
/** * 현재 oracle 7 버전대는 unicode 1.2를 사용하고, * oracle 8.1.5 버전부터 unicode 2.0을 사용합니다. * 그리고 jdk1.2버전은 unicode 2.0을 사용하지요 * 그래서 oracle 8.1.5에서 읽어들인 한글은 보이지만, * 7버전에서 읽어들인 한글은 unicode 버전차이로 ?표로 표시됩니다. * 때문에 oracle 7버전에서 한글을 지원받으려면 * DB에서 read할때는 unicode 1.2를 2.0으로, DB로 write할때는 unicode 2.0을 1.2로 * conversion 해주는 class를 만들어서 import하여 사용하면 됩니다. * * UniCode 2.0 을 UniCode 1.2 로 변환 * @param uni20 변환할 문자 (UniCode 2.0) * @return String 변환된 문자 (UniCode 1.2) */ public String convUni20ToUni12 (String uni20) { if (uni20 == null) return null; int len = uni20.length(); char [] out = new char[len]; for (int i = 0; i < len ; i++) { char c = uni20.charAt(i); if (c < 0xac00 || c > 0xd7a3 ) { out[i] = c; } else { // Unicode 2.0 한글코드 영역 try { byte [] ksc = String.valueOf(c).getBytes("KSC5601"); if (ksc.length != 2) { out[i] = '\ufffd'; System.err.println ("Warning : Some of Unicode 2.0 Hangul Character was ignored."); } else { out[i]= (char) (0x3400 + ((ksc[0] & 0xff) - 0xb0) * 94 + (ksc[1] & 0xff) - 0xa1); } } catch (java.io.UnsupportedEncodingException ex) { log(CLASS_NAME + ".convUni20ToUni12()","UniCode 1.2 변환을 실패했습니다."+ex.toString()); } } } return new String (out); }
728x90
'Core Java' 카테고리의 다른 글
[Source] 배열값 정렬하기 (0) | 2010.10.20 |
---|---|
[Source] Unicode 1.2를 Unicode 2.0 으로 변환 (0) | 2010.10.20 |
[Source] Character Set Conversion (0) | 2010.10.20 |
[Source] String to Unicode (0) | 2010.10.20 |
[Source] Unicode To String (0) | 2010.10.20 |