Я создал пустой файл в Linux и добавил символ к нему.Но он отображается как 2-байтовый файл - PullRequest
0 голосов
/ 09 декабря 2010

Кажется, он добавляет (char) 10 к концу файла.Обратите внимание, что я делаю это на Наутилусе, а не программно.Почему это происходит?Как это предотвратить?

Ответы [ 2 ]

4 голосов
/ 09 декабря 2010

ASCII 0x0A - это новая строка '\ n'.

Если ваш файл создан с echo 1 >file, к нему добавляется новая строка.Если вы хотите пропустить это поведение, выполните echo -n 1 >file.

1 голос
/ 09 декабря 2010

Символ ASCII с десятичным кодом 10 (0x0a в шестнадцатеричном формате) - это \ n, т. Е. Символ новой строки (LF - перевод строки) в Unix-подобных системах. Как вы создали файл?

EDIT:

Если вы используете echo, вам, вероятно, следует попробовать флаг -n, который подавляет последний символ новой строки, который выводится по умолчанию:

echo -n X > file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...