public static CharSequence[] split(CharSequence line,int delimiter){
  CharSequence[] tokens0=split(line,delimiter,N);
  if (tokens0.length < N) {
    return tokens0;
  }
 else {
    CharSequence[] tokens1=split(tokens0[N - 1],delimiter);
    CharSequence[] tokens2=new CharSequence[tokens0.length + tokens1.length - 1];
    System.arraycopy(tokens0,0,tokens2,0,tokens0.length - 1);
    System.arraycopy(tokens1,0,tokens2,tokens0.length - 1,tokens1.length);
    return tokens2;
  }
}

public static CharSequence [ ] split ( CharSequence line , int delimiter ) { CharSequence [ ] tokens0 = split ( line , delimiter , N ) ; if ( tokens0 . length < N ) { return tokens0 ; } else { CharSequence [ ] tokens1 = split ( tokens0 [ N - 1 ] , delimiter ) ; CharSequence [ ] tokens2 = new CharSequence [ tokens0 . length + tokens1 . length - 1 ] ; System . arraycopy ( tokens0 , 0 , tokens2 , 0 , tokens0 . length - 1 ) ; System . arraycopy ( tokens1 , 0 , tokens2 , tokens0 . length - 1 , tokens1 . length ) ; return tokens2 ; } }
splits a charsequence according to the delimiter character .
