Мне нужно проанализировать файл в perl. Файл находится в формате UTF 16 le, но мне нужен файл в формате UTF 8. Я преобразовал файл и сохранил его в новом файле, однако у меня возникла проблема с новым символом строки.Ошибка формата файла в Perl
В исходном файле каждая новая строка представлена как 0d 00 0a 00
(возврат каретки и новая строка), однако в преобразованном файле я вижу только 0d вместо 0d 0a
. Проблема в том, что в следующий раз, когда я пытаюсь прочитать файл, он читает весь файл как 1 строку. Чтобы преобразовать файл, все, что я делаю, это прочитать файл в формате UTF 16 и записать его в UTF 8. Не могли бы вы рассказать мне, как я могу добавить 0a
в конце?
Вы описали результат, но вы не указали свой код. Пожалуйста, покажите свой код. –
Вы, возможно, «chomp'ing ваш вход (таким образом удаляя LF и оставляя только CR)? – cjm
Просто используйте 'iconv' для преобразования вашего файла. – n0rd