Возврат каретки / разрывы строк с \n в строках в Android

Я пишу приложение для Android, где записываю файл на диск с одним значением данных в строке. Позже такие файлы могут быть считаны обратно в приложение, и этот простой формат данных десериализуется обратно в массив. На данный момент я разграничиваю значения / строки данных в коде сериализации и десериализации с помощью \n,

Как Android обрабатывает возврат каретки и такие разрывы строк? Могу ли я использовать \n безопасно в этом контексте?

3 ответа

Решение

Лучше использовать

String lineSep = System.getProperty("line.separator");

Да, разделитель строк под Windows есть \r\n (CR+LF), на Mac \r и в Linux (Android) \n, У Java есть умный читатель, который возвращает строку без разделителя, и println, который использует настройку платформы System.getProperty("line.separator"),

1 - как люди передо мной, я говорю, System.getProperty("line.separator") твой друг.

2 - Поскольку Android основан на ядре Linux, наиболее вероятно, что line.separator собственность на самом деле \n

3 - при чтении или записи ваших файлов используйте буферизованную программу чтения и записи соответственно их методы readLine и newLine. У вас не должно возникнуть проблем с файлами ввода / вывода с / для других платформ.

Другие вопросы по тегам