본문 바로가기

Javascript Tip

[javascript] utf-8 euc-kr 인코딩

반응형
javascript

function fncEnCode(param)
{

    // sjisbmoc

    var encode = '';

    for(i=0; i<param.length; i++)
    {
        var len  = ''+param.charCodeAt(i);
        var token = '' + len.length;
        encode  += token + param.charCodeAt(i);
    }

    return encode;
}

function fncDeCode(param)
{

    // sjisbmoc

    var sb = '';
    var pos = 0;
    var flg = true;

    if(param != null)
    {
        if(param.length>1)
        {
            while(flg)
            {
                var sLen = param.substring(pos,++pos);
                var nLen = 0;

                try
                {
                    nLen = parseInt(sLen);
                }
                catch(e)
                {
                    nLen = 0;
                }

                var code = '';

                if((pos+nLen)>param.length)
                    code = param.substring(pos);
                else
                    code = param.substring(pos,(pos+nLen));

                pos  += nLen;
                sb += String.fromCharCode(code);

                if(pos >= param.length)
                    flg = false;
            }
        }
    }

    return sb;
}

반응형