java編寫的字串擷取函式—UTF-16定長特性

atlantisholic發表於2011-09-22
實際應用中編碼的格式多種多樣,他們的特性也各不相同。有些編碼格式是定長的,而有些則是不定長的,下面是一個使用UTF-16編碼的定長特性(長度一般情況下都為2)編寫的一個字串擷取函式,具體實現如下:

public  static  String  substr(String  s,int  offset,int  length) throws UnsupportedEncodingException{

       byte[]bts=s.getBytes("UTF-16");

       if(offset+length>(bts.length-2)/2){

           throw  new  RuntimeException("字串長度不能超過:"+(bts.length-2)/2);

       }

       int  begin=offset*2+2;

       int  len=length*2;

      

       return  new  String(bts,begin,len,"UTF-16");

    }

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23071790/viewspace-708068/,如需轉載,請註明出處,否則將追究法律責任。

相關文章