Почему два файла с одинаковым текстом и кодировкой, но имеют разный размер? - PullRequest
1 голос
/ 20 марта 2019

Я запускаю программу с двумя «одинаковыми» тестовыми файлами отдельно, но получаю два разных результата.

Первый тестовый файл a.txt из 16 байтов приводит к правильному результату, но второй тестовый файл b.txt из 14 байтов приводит к неправильному результату.

Я сохранил их обоих в кодировке UTF-8.

Обе они состоят из следующих трех строк при открытии с Sublime Text в кодировке UTF-8:

p cnf 1 1
1 0

Однако они отличаются при открытии с помощью Sublime Text в кодировке Hexadecimal:

a.txt (16 байт):

7020 636e 6620 3120 310d 0a31 2030 0d0a

b.txt (14 байтов):

7020 636e 6620 3120 310a 3120 300a

Почему они разные? Как я могу превратить b.txt в a.txt?

1 Ответ

3 голосов
/ 20 марта 2019

Первый файл имеет маркеры конца строки в стиле Windows: возврат каретки с новой строкой '\r\n', шестнадцатеричный 0d 0a.

Второй имеет стиль Unix: новая строка '\n' hex 0a.

Существует много способов преобразования из одного стиля в другой.Возвышенный текст может иметь опцию сохранения с определенными окончаниями строк, поиск / замена могут работать, или если вы работаете в Unix-подобной системе, вы можете попробовать ответить на этот вопрос .

...