1

Когда ОС хранит файл .txt (например), как он обозначает пробел или символ новой строки?

Если я не ошибаюсь, все данные хранятся на жестком диске в двоичном виде. Так есть ли определенная двоичная последовательность, которая сигнализирует о новой строке? Или есть символ или символы, которые сигнализируют ОС после того, как файл был прочитан из двоичного файла?

2 ответа2

3

В зависимости от ОС он использует специальные символы Linefeed и / или Carriage Return для обозначения новой строки (DOS использует оба, Linux использует только Linefeed, и я думаю, но я не уверен, что OSX использует только Carriage return).

Символы, связанные с возвратом каретки, - 0x0D, а перевод строки - 0x0A.

1

Вы правы, все данные на жестком диске являются двоичными. Текстовые файлы также хранятся в двоичном виде. Нет разницы между текстовым файлом или фильмом. Операционные системы знают, что такое текстовый файл, и могут преобразовать этот двоичный файл в удобочитаемую форму, известную как текстовый файл. Windows и * NIX обрабатывают текстовые файлы немного по-разному, но более или менее одинаково. Есть символы, которые обозначают end of line , Carriage return , line feed и End of File .

Эта статья в Википедии уходит немного глубже.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .