无法重命名文件(系统找不到指定的文件(代码:2))
Posted
技术标签:
【中文标题】无法重命名文件(系统找不到指定的文件(代码:2))【英文标题】:Can not rename file (The system cannot find the file specified (code: 2)) 【发布时间】:2021-07-02 03:11:36 【问题描述】:我正在尝试编写重命名目录 (C:\BA\scrapers) 中文件的代码。在 cmd 中,系统会提示您输入要重命名的文件($filePointer),然后提示您输入要重命名的文件名($newFileName)。
我收到以下错误:系统找不到指定的文件(代码:2)
function renameFile()
$filePointer = rtrim(fgets(STDIN));
echo "\nEnter new file name: ";
$newFileName = rtrim(fgets(STDIN));
if(!rename($filePointer, $newFileName))
echo ("$filePointer cannot be renamed due to an error");
else
rename($filePointer, $newFileName);
我已经尝试指定要重命名的目录,但是我没有设法让它工作。我是初学者,所以请放轻松。
【问题讨论】:
【参考方案1】:您正在重命名文件两次。在您将其重命名后
if(!rename($filePointer, $newFileName))
重命名显然不存在
else
rename($filePointer, $newFileName);
删除else
块
【讨论】:
【参考方案2】:你必须写这样的东西才能让它工作。
<?php
function renameFile()
$myPath="C:\\BA\\scrapers\\";
echo "\nEnter old file name: ";
$filePointer =$myPath . rtrim(fgets(STDIN));
echo "\nEnter new file name: ";
$newFileName = $myPath .rtrim(fgets(STDIN));
if(!rename($filePointer, $newFileName))
echo ("$filePointer cannot be renamed due to an error");
else
echo "Successfully renamed";
?>
【讨论】:
以上是关于无法重命名文件(系统找不到指定的文件(代码:2))的主要内容,如果未能解决你的问题,请参考以下文章