z

BLOG ARTICLE KSC5601 | 1 ARTICLE FOUND

  1. 2011.09.14 Java KSC5601 전/반각 처리 1


public static String toFullChar(String src)
    {
        // 입력된 스트링이 null 이면 null 을 리턴
        if (src == null)
            return null;
        // 변환된 문자들을 쌓아놓을 StringBuffer 를 마련한다
        StringBuffer strBuf = new StringBuffer();
        char c = 0;
        int nSrcLength = src.length();
        for (int i = 0; i < nSrcLength; i++)
        {
            c = src.charAt(i);
            //영문이거나 특수 문자 일경우.
            if (c >= 0x21 && c <= 0x7e)
            {
                c += 0xfee0;
            }
            //공백일경우
            else if (c == 0x20)
            {
                c = 0x3000;
            }
            // 문자열 버퍼에 변환된 문자를 쌓는다
            strBuf.append(c);
        }
        return strBuf.toString();
    }
    public static String toHalfChar(String src)
    {
        StringBuffer strBuf = new StringBuffer();
        char c = 0;
        int nSrcLength = src.length();
        for (int i = 0; i < nSrcLength; i++)
        {
            c = src.charAt(i);
            //영문이거나 특수 문자 일경우.
            if (c >= '!' && c <= '~')
            {
                c -= 0xfee0;
            }
            else if (c == ' ')
            {
                c = 0x20;
            }
            // 문자열 버퍼에 변환된 문자를 쌓는다
            strBuf.append(c);
        }
        return strBuf.toString();
    } 


반각문자열로 부터 전각 데이터를 얻을 떄:

String str = toFullChar("홍0A 길 ");

byte[] data = str.getBytes("KSC5601");


전각배열로 부터 반각 데이터를 얻을 때:

String strHalf= toHalfChar(new String(binary,offset,length,"KSC5601"));

byte[] data = strHalf.getBytes("KSC5601");
 

출처: 
http://www.javaservice.net/~java/bbs/read.cgi?m=resource&b=qna2&c=r_p&n=1069148174&k=%EC%A0%84%EA%B0%81&d=tb#1069148174   

 
AND