@ Override public void decode ( byte [ ] bytes , StringBuilder buffer ) { if ( bytes == null ) { // append nothing return ; } char [ ] table = CHAR_TABLE ; for ( int i = 0 ; i < bytes . length ; i ++ ) { int code = ( int ) bytes [ i ] & 0x000000ff ; if ( code == EXTENDED_ESCAPE ) { // take next char from extension table table = EXT_CHAR_TABLE ; } else { buffer . append ( ( code >= table . length ) ? ' ' : table [ code ] ) ; // go back to the default table table = CHAR_TABLE ; } } }
Decode an SMS default alphabet - encoded octet string into a Java String .