2013-04-23 2 views
1

Я пытаюсь сортировать SimpleSortingVector в BlackBerry, который содержит французские акценты. Сортировка помещает элементы с акцентами в самом конце списка. Как сортировать в blackberry, который будет помещать акцентированные символы с несогласованными символами. Collator, похоже, не работает, потому что я считаю, что создаю слишком мало версии JRE. Я строю для JRE 4.5.0 минимум.Blackberry - Сортировка с акцентами

т.е.

É = E

вот как сортировать вектор:

ssv.setSortComparator(new Comparator() 
{ 
    public int compare(Object obj1, Object obj2) 
    { 
      String value = ((Item) obj1).getText(); 
      String otherValue = ((Item) obj2).getText(); 

      return value.compareTo(otherValue); 
    } 
}); 

ssv.reSort(); 

Спасибо, DMan

ответ

2

OS 4.5 является сложной задачей. Для OS 7, RIM добавили строку компаратор в StringUtilities который может быть сконфигурирован так, как вы хотите:

StringUtilities.compare(String aString1, int aOffset1, int aLength1, 
         String aString2, int aOffset2, int aLength2, 
         int aLevel, int aLocale, int aFlags, int aFlagsMask) 

К сожалению, я не знаю ни встроенных решений для более ранних версий BBOS. Вы можете создать свою собственную таблицу сортировки для французских символов и написать собственный сопоставитель, если вам нужно только поддерживать французский язык. Если вы ищете глобальную совместимость, это будет утомительно.

Смежные вопросы