C语言的rename函数 c rename函数

如何在C语言编程里面修改源文件名字C修改文件名:使用rename函数 。
rename函数:功能描述: 改变文件的名称或者位置,如果目标已存在,将被自动覆盖 。用法:#include stdio.hint rename(const char *oldpath, const char *newpath);参数:
oldpath:旧文件名 。newpath:新文件名或者新位置 。
具体可以分以下2种情况:
1、修改单个文件
直接使用rename即可 。
2、批量修改文件(如:按一定规则修改某目录下所有文件)
需要使用opendir遍历目录,然后修改该目录下文件 。下面提供一个简单的例子 。
void ModFilesName(const char *pcszPath)
{
char szPathFile[1024] = {0};//路径 文件名
DIR *dir_p;
struct dirent *direntp;
struct stat entryInfo;
//文件目录不存在,则创建
if(stat(pcszPath, entryInfo)0)
{
printf("Auto create folder:%s\n", pcszPath);
mkdir(pcszPath, 0755);
}
if ((dir_p = opendir (pcszPath)) == NULL)
{
return;
}
while ((direntp = readdir (dir_p)) != NULL)
{
//组合完整路径
sprintf(szPathFile, "%s/%s", pcszPath, direntp-d_name);
//判断文件是否是目录
if(lstat(szPathFile, entryInfo) == 0)
{
if(S_ISDIR(entryInfo.st_mode))
{
continue;//忽略目录
}
rename(szPathFile, 你要修改成的文件名);
}
} // while ( ...
closedir (dir_p);
}
推荐一片文章:
希望能帮助到你,你的好评是我前进的动力!谢谢!
c语言rename命令语法不正确rename函数功能是给一个文件重命名,用该函数可以实现文件移动功能,把一个文件的完整路径的盘符改一下就实现了这个文件的移动 。1 头文件: stdio.h 2 声明: int rename(char *oldname, char *newname); 3 功能:将oldname重命名为newname,如果oldname和newname归属的文件夹不同,可以做到移动的效果 。
C语言编程的rename应用的问题int rename(char *oldname, char *newname);
系统函数rename要求参数为char *字符串,你的NewName是一个CString,一般来说,如果工程不是UNICODE模式,那么应该是可以执行的,UNICODE模式下,不可以,因为CString根据工程模式会自动采用WCHAR作为基础字符 。
确认一下工程模式吧,如果是UNICODE模式,推荐使用_trename或者_wrename函数,当然,参数类型要统一 。
如何用c语言重命名可以通过C库函数rename实现 。
【C语言的rename函数 c rename函数】头文件:stdio.h
原型::int rename(char *oldname, char *newname);
功能: 给一个文件重命名,从原始的oldname改成新名字newname 。如果oldname和newname带有路径,且所在文件夹不同,那么用该函数可以实现文件移动功能 。删除成功返回0 , 否则返回-1 。
使用rename需要注意:
一、重命名文件:
如果newname指定的文件存在,则会被覆盖 。
如果newname与oldname不在一个目录下,则相当于移动文件 。
二、重命名目录:
如果oldname和oldname都为目录,则重命名目录 。
如果newname指定的目录存在且为空目录,则先将newname删除 。
对于newname和oldname两个目录,调用进程必须有写权限 。
重命名目录时,newname不能包含oldname作为其路径前缀 。例如,不能将/usr更名为/usr/foo/testdir , 因为老名字( /usr/foo)是新名字的路径前缀,因而不能将其删除 。
关于C语言的rename函数和c rename函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读