Как переименовать файл (1).ext в file1.ext в php

Я хочу преобразовать файлы PDF в текстовые файлы, используя конвертер xpdf с php. Проблема в том, что имена файлов - это файл (1).pdf, файл (2).pdf... Скобки - это проблема. XPDF не может читать имена файлов с помощью скобок. Поэтому я хочу изменить имя на файл1.pdf, файл2 .pdf.... (убрать скобки) Я пытался использовать rename() в php всеми возможными способами с экранированием, но все равно получаю одну из двух ошибок

= Система не может найти код пути 2 = Неверный синтаксис каталога, файла, тома или что-то в этом роде... код 123

Пожалуйста, помогите мне. Я хочу сделать это на самом PHP.

то, что я использовал..

for($i=1;$i<=$_POST['number'];$i++)
{

    $filen2="\"d:/res/file(".$i.").pdf\"";
    $file="\"d:/res/files".$i.".pdf\"";
    rename($filen2,$file);
    echo "converting file ".$filen2."<br/>";
    shell_exec("D:/xpdf/bin32/pdftotext.exe $file");

} 

а также...

for($i=1;$i<=$_POST['number'];$i++)
{

    $filen2="\"d:\\res\\file(".$i.").pdf\"";
    $file="\"d:\\res\\files".$i.".pdf\"";
    rename($filen2,$file);
    echo "converting file ".$filen2."<br/>";
    shell_exec("D:/xpdf/bin32/pdftotext.exe $filen2");

} 

прямо сейчас я попробовал rename() для файлов без скобок... все равно это не работает... что может быть не так?? XPDF без проблем работал для файлов без скобок


person Nidhin David    schedule 05.04.2014    source источник
comment
опубликуйте синтаксис, который вы использовали для переименования   -  person Abhinav    schedule 05.04.2014
comment
@user2401175 user2401175 Я не знал, как комментировать. В тот же день я опубликовал синтаксис, но забыл упомянуть ваше имя в комментарии. На самом деле проблема была в вирусе. Теперь после переустановки Windows все заработало.   -  person Nidhin David    schedule 11.05.2014


Ответы (1)


Я решил проблему. На самом деле проблема была с моей Windows. В ней был чертов вирус, который не позволял мне получить доступ к дополнительным операциям, таким как изменение переменной PATH, открытие панели управления и т. Д. ... Теперь я переустановил Windows и все остальное. работает так, как ожидалось..

Синтаксис rename() rename(<path to file>,<path to the same file with new name>);

например, чтобы переименовать D:\res\file(1).pdf в file1.pdf, я использовал следующий код rename('D:/res/file(1).pdf','D:/res/file1.pdf');. Он работал отлично. Я также попробовал rename('D:\\res\\file(1).pdf','D:\\res\\file1.pdf');, это тоже сработало. Жаль, что я не переустановил Windows раньше.

person Nidhin David    schedule 11.05.2014