文章类型: VC&C++
关键词: VC,C++,修改,文件名,rename
内容摘要: C++修改文件名

C++修改文件名

2018/9/4 17:02:55    来源:apple    阅读:

windows 及 ubuntu下均验证成功

很容易,一个函数就搞定了,

rename(oldName.c_str(), newName.c_str())

此函数带返回值,0为成功,1为失败。

#include <iostream>
#include <string>
#include <cstdlib>
 
int main(int argc, char *argv[])
{
    std::string oldName, newName;
#ifdef _WIN32
    oldName = "F:\\data\\test\\old.jpg";
    newName = "F:\\data\\test\\new.jpg";
#else
    oldName = "/media/myUbuntu/F/data/test/old.jpg";
    newName = "/media/myUbuntu/F/data/test/new.jpg";
#endif
 
    if (!rename(oldName.c_str(), newName.c_str()))
    {
        std::cout << "rename success "<< std::endl;
    }
    else
    {
        std::cout << "rename error "<< std::endl;
    }
 
    return 0;
}


下面给出一个由于生产文件需要一定时间,且对生产后的文件需要改名的代码策略,

//目的:将前面的“生成pdf”文件进行重新命名,直至重命名
//成功(因为生成pdf文件需要时间,这里的做法能够保证生成pdf完成并且重命名成功!)
    while (true)
    {
        //rename函数带返回值,0为成功,1为失败。
        if (rename(filepdfname, newpdfname) == 0)
        {
            remove(filepdfname);
            break;
        }
        else
        {
            Sleep(50);
        }
    }


↑ 上一篇文章:MSSQL中带事务(两种方式)的存储过程 关键词:MSSQL,事务,两种方式,两种方法,存储过程,PROC.. 发布日期:2018/8/29 10:12:51
↓ 下一篇文章:注册dll与反注册dll,注册表编辑的批处理文件bat的写法 关键词:注册,dll,反注册,注册表,编辑,批处理,bat 发布日期:2018/9/5 10:27:52
相关文章:
vc++文件目录的删除 关键词:vc++,VC,path,null,delete,api,c,C++ 发布日期:2017-08-30 13:41
vc++ string处理大全 关键词:vc++,处理,大全,string,date,float,语言,byte 发布日期:2016-09-22 14:22
VC++ MSXML创建XML文件以及对XML文档解析 关键词:VC++,MSXML创建XML文件以及对XML文档解析 发布日期:2016-08-23 09:41
相关目录:.NETVC&C++
我要评论
正在加载评论信息......