Я пытаюсь сортировать строки в текстовом файле с помощью Android. Вы можете мне помочь? Этот код сортирует часть не всех из них. Я имею в виду, что это вроде 1-2-3-20-4-5-6. Это должно быть 1-2-3-4-5-6-20Сортировка строк ввода в текстовом файле
try
{
File root = new File(Environment.getExternalStorageDirectory(), "Notes");
if (!root.exists())
{
root.mkdirs();
}
File gpxfile = new File(root, fileName);
FileWriter writer = new FileWriter(gpxfile,true);
writer.append(s+"\n\n");
writer.flush();
writer.close();
FileReader fileReader = new FileReader(gpxfile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String inputLine;
List<String> lineList = new ArrayList<String>();
while ((inputLine = bufferedReader.readLine()) != null) {
lineList.add(inputLine);
}
fileReader.close();
Collections.sort(lineList);
System.out.println(lineList);
FileWriter fileWriter = new FileWriter(gpxfile);
PrintWriter out = new PrintWriter(fileWriter);
for (String outputLine : lineList) {
out.println(outputLine);
}
out.flush();
out.close();
fileWriter.close();
//Toast.makeText(this, "Data has been written to Report File", Toast.LENGTH_SHORT).show();
}
catch(IOException e)
{
e.printStackTrace();
}
Я подозреваю, что заказ 1-2-20-3-4-5-6 не 1-2-3-20-4-5-6. –
@William_Wilson Это был образец, который может быть, но как я могу его сортировать. – xiac
Как сортировка кода сейчас важна. Если мой предложенный заказ является фактическим выходом, то решение Тима ниже верно и они сортируются как строки вместо цифр. Если вы действительно получаете 3 до 20, то текущая сортировка делает что-то гораздо более странное. –