我想将文件从目的地移动到另一个文件夹,我的代码正常工作,但如果目标文件夹中已存在同名文件,则会出错, 我的代码在下面给出
char * src ="c:\\src\\abc.txt";
char * dst = "d:\\dest\\abc.txt";
if ( rename(src,dst ) )
perror( NULL );
我应该如何移动文件以便覆盖目标文件夹中的文件。请指导我
答案 0 :(得分:4)
MoveFileEx( src, dst, MOVEFILE_REPLACE_EXISTING );
答案 1 :(得分:2)
如果您想坚持使用c api,那么如果重命名将执行副本,您可以使用remove功能删除该文件:
使用您的代码:
char * src ="c:\\src\\abc.txt";
char * dst = "d:\\dest\\abc.txt";
remove(dst);//remove the file first
if ( rename(src,dst ) )
perror( NULL );
答案 2 :(得分:-1)
1)我希望它适用于uuu ..
int result;
char oldname[] ="oldname.txt";
char newname[] ="newname.txt";
result= rename( oldname , newname );
if ( result == 0 )
puts ( "File successfully renamed" );
else
perror( "Error renaming file" );