我正在尝试在BlackBerry中对包含法语口音的SimpleSortingVector进行排序。排序将带有重音符号的项目放在列表的最后。如何在黑莓中排序,将重音字符放在非重音字符上。 Collator似乎不起作用,因为我相信我正在构建一个太低的JRE版本。我正在为JRE 4.5.0建立最低价格。
即
É= 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
答案 0 :(得分: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的内置解决方案。您可以为法语字符构建自己的排序表,如果只需要支持法语,则可以编写自定义比较器。如果你正在寻找全球兼容性,那将会变得乏味。