Страница 1 из 1

символ конца строки при записи в файл

Добавлено: 17 июн 2007, 03:31
Mosk
Вместо символа конца строки(0x0a0d) пишется просто 0x0a...wtf???

Re: символ конца строки при записи в файл

Добавлено: 17 июн 2007, 03:40
Mosk
Суть: хочу сделать файл *.сsv из БД....
достаю построчно из базы,вставляю разделители между атрибутами,превращаю это все дело в строку и $line и пишу в файл вот таким макаром:
fwrite($f,$list."\n")....но когда открываешь файл в блокноте,то там не перевод строки в конце стоит,а какой-то квадратик...я пошел дальше,открыл файл не в блокноте,а в дебагере,и обнаружил,что "/n" он заменяет на 0x0a,хотя, как всем известно, перевод строки это 0x0a0d....из-за этого не получается корректный csv....помогите ,кто чем может....

Re: символ конца строки при записи в файл

Добавлено: 17 июн 2007, 03:49
Mosk
извиняюсь...рано запаниковал...бывает....
1) 0x0d - можно написать \r
2) писать надо не 0х0a0d,а 0x0d0a.....т.е. сначала в начало коретку,а потом уж вниз...вот такие вот тонкости..)
т.е. правильная запись будет :fwrite($f,$list."\r\n")....
извиняюсь....тему на склад,мало ли понадобится какому-нить ламеру еще ,типа меня....

Re: символ конца строки при записи в файл

Добавлено: 18 июн 2007, 15:07
isms.ru
Символы конца строки (ха, нет такого) зависят от операционной системы, в которой пишется файл.
В винде это перевод строки и возврат каретки (\n \r) в никсовых системах - только \n

В идеале наличие одного \n должно восприниматься правильно.

Re: символ конца строки при записи в файл

Добавлено: 03 июл 2007, 01:44
Mosk
вот именно что важна еще и последовательнось!!!!
\n \r - как ты пишешь - не правильно.....
\r\n - вот так работать будет......
у меня именно из-за последовательности долго и не получалось

Re: символ конца строки при записи в файл

Добавлено: 03 июл 2007, 13:23
isms.ru
Я делал проще:
убирал \r и все вставало на свои места.