Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   запись в файл на Perl (http://forum.oszone.net/showthread.php?t=62813)

koresaram 15-03-2006 17:57 418163

запись в файл на Perl
 
привет народ. есть ламерский но очень срочный вопрос :)
задача - записать в файл строчку с данными. строчка должна выглядеть так: 'ext_1',"Александр"
я пишу код
open (NEW,">>$newpath/$f");
print NEW "\'ext_1\',\"$data[1]\"";
в $data[1] у меня записано Александр. в итоге в новом файле у меня записывается:
'ext_1',"Александр
"
то есть двойная кавычка с какого-то перепоя уходит на другую строку. вопрос - где у меня ошибка кроме как в ДНК :)

mrcnn 15-03-2006 21:11 418242

мне кажется, что в $data[1] в конце символ перехода на новую строку. Отрежь его либо с помощью chop($data[1]) либо chomp($data[1]);

?

koresaram 16-03-2006 11:12 418372

чувак, ты гений :) спасибо!
open (NEW,">>$newpath/$f");
chomp($data[1]);
print NEW "\'ext_1\',\"$data[1]\"\n";
print "выполнено добавление имени $data[1] в файл $f";
close (NEW);
тепер пишет как надо :)
'ext_1',"Ольга"


koresaram 16-03-2006 13:46 418415

народ, а вот еще вопрос созрел - теперь мне надо заменить в этом файле строку 'language',"English" на 'language',"Russian"
я пишу
$newpath="../testcatalog1";
opendir(MD,"$newpath/");
@files = readdir(MD);
foreach $f (@files)
open (OLD,"$newpath/$f");
@data=<OLD>;
s/English/Russian/;
close (OLD);
}
closedir(MD);
но чет он ничего у меня не меняет.



Время: 02:50.

Время: 02:50.
© OSzone.net 2001-