Exemple

public static void main(String[] args){
java.util.StringTokenizer st = new java.util.StringTokenizer("il s'agit d'un test de \ud800\udc00", "\ud800"); //$NON-NLS-1$ //$NON-NLS-2$
int segment=0;
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
segment=segment+1;
}
}
Solution
Utilisez ICU 2.6.1com.ibm.icu.util.StringTokenizer.

public static void main(String[] args){
com.ibm.icu.util.StringTokenizer st = new com.ibm.icuutil.StringTokenizer("il s'agit d'un test de \ud800\udc00", "\ud800"); //$NON-NLS-1$ //$NON-NLS-2$
int segment=0;
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
segment=segment+1;
}
}