У меня есть несколько файлов в папке, хранящейся на устройстве Android.
Имя папки = английский/
Имена файлов = 001-001-0000.png, 001-001-000.png, 001-001-001.png, 001-001,002.png, 001-001-003.png ... до 001-001-010. png
Я должен загрузить их на экран в отсортированном порядке по имени. я использую этот код
String[] files = dir.list();
Arrays.sort(files, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.compareToIgnoreCase(o2);
}
});
Результат, который я получил,
001-001-000.png 001-001-0000.png 001-001-001.png 001-001,002.png 001-001-003.png ... 001-001-010.png
Но когда я проверяю проводник на своем ПК с Windows, я получаю
001-001-0000.png 001-001-000.png 001-001-001.png 001-001,002.png 001-001-003.png ... 001-001-010.png
Разница здесь в том, что файл, который заканчивается четырьмя нулями (001-001-0000.png), предшествует файлу, который заканчивается тремя нулями (001-001-000.png), и мне нужен тот же порядок сортировки в моем коде.