Возврат каретки / разрывы строк с \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. У вас не должно возникнуть проблем с файлами ввода / вывода с / для других платформ.