티스토리 툴바


트리 자바스크립트 사이트 모음

Development/java 2009/09/23 22:06
검색까지 되는게 안보이네..흠..
Posted by 블루렌즈

리눅스환경에서 한글환경처리

Development/java 2009/08/04 16:42

1. Test.java 소스

[root@image01 wsloader]# cat Test.java
import java.io.*;

public class Test {
        public static void main(String[] args) throws Exception {
                System.out.println("file.encoding="+System.getProperty("file.encoding"));
                System.out.println("홍길동");
        }
}

2.테스트

[root@image01 wsloader]# env | grep LANG
LANG=ko_KR.eucKR
[root@image01 wsloader]# javac Test.java
[root@image01 wsloader]# java Test
file.encoding=EUC-KR
홍길동
[root@image01 wsloader]# export LANG=c
[root@image01 wsloader]# java Test
file.encoding=ANSI_X3.4-1968
???
[root@image01 wsloader]# export LANG=ko_KR.eucKR
[root@image01 wsloader]# java Test
file.encoding=EUC-KR
홍길동
Posted by 블루렌즈

한글 유무 확인하는 방법

Development/java 2009/08/04 16:35

자바에서 각 문자는 내부적으로 유니코드값으로 저장되므로
char의 값을 유니코드 테이블과 비교해보면 이것이 영어인지 한글인지 혹은 한자인지 알수 있을 것입니다.
(질문은 단어가 한글인지 영문인지를 묻는데
단어는 물론 한영이 섞여 있을 수도 있고 자바 내부에서는
유니코드로 처리되므로 큰 의미가 없을 것입니다.


// charTest.java

class charTest {
	public static void main(String args[]) {
		for (int i=0;i<args.length;i++) {
			System.out.println("args["+i+"]="+args[i]);	
			char[] charArray=args[i].toCharArray();
			for (int j=0; j<charArray.length; j++) {
				System.out.print(" 0x"+Integer.toHexString((int)charArray[j]));
				if (charArray[j]>='A' && charArray[j]<='z')
					System.out.print("(English)");
				else if (charArray[j]>='\uAC00' && charArray[j]<='\uD7A3')
					System.out.print("(한글)");
			}
			System.out.println("");
		}
	}
}

실행 예
C:\javaworks>java charTest AbZz 가나다라한글
args[0]=AbZz
0x41(English) 0x62(English) 0x5a(English) 0x7a(English)
args[1]=가나다라한글
0xac00(한글) 0xb098(한글) 0xb2e4(한글) 0xb77c(한글) 0xd55c(한글) 0xae00(한글)

Posted by 블루렌즈