Следует ли использовать возврат каретки \ r и новую строку \ n всегда вместе? \ Г \ п
-
05-07-2019 - |
Вопрос
В JavaScript это была проблема кросс-браузерной совместимости, поэтому оба использовались, но на разных языках есть многочисленные экземпляры, где я вижу оба распечатанных вместе как \ r \ n. Является ли это все еще общепринятой нормой, согласно которой вы должны всегда использовать оба, или когда-нибудь языки понимают оба, и в итоге вы получаете перерыв и возврат?
Решение
Пара CRLF - это ожидаемый маркер конца строки (EOL) в большинстве интернет-протоколов.
Здесь - «Принцип робастности» Постеля. следует применять. Будьте либеральны в том, что вы принимаете, но строго в том, что вы посылаете. Так что будьте готовы получить только LF, но если вы отправляете данные, используйте все, что требуется соответствующими стандартами.
Другие советы
Это не проблема совместимости языка, а проблема файла или протокола. В отношении файлов: Unix использует \ n в качестве возврата каретки, Windows использует \ r \ n, и я думаю, что MacOS использовал (сейчас не уверен) \ r. Многие «кроссплатформенные» языки абстрагируют это в зависимую от платформы переменную. По протоколу: что указывает протокол.