首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

字符串替换有关问题 c++

2013-01-20 
字符串替换问题 c++我获得一个路径字符串,例如:“E:\\Study\\OpenGL\\111.jpg”现在我想更改文件的后缀名为:

字符串替换问题 c++
我获得一个路径字符串,例如:“E:\\Study\\OpenGL\\111.jpg”

现在我想更改文件的后缀名为:“E:\\Study\\OpenGL\\111.txt”

改怎么做呢?
菜鸟,见笑了
[解决办法]
C++ ,可用string函数替换。
函数楼主想用  字符数组实现替换?  
char sPath[] ="E:\\Study\\OpenGL\\111.jpg"; //替换内容
[解决办法]


#include <iostream>
#include <string>

bool replace(std::string& str, const std::string& from, const std::string& to) 
{
    size_t start_pos = str.find(from);
    if(start_pos == std::string::npos)
        return false;
    str.replace(start_pos, from.length(), to);
    return true;
}

int main()
{
using namespace std;
string path = "E:\\Study\\OpenGL\\111.jpg";
replace(path, ".jpg", ".txt");
cout << path << endl;
}

[解决办法]
反向查找\\,找到后删除最后一个\\的内容,再追加新的文件名
[解决办法]
char filename[]=(char)m_xmlFilePath;  //报错了这行
->
char *filename=m_xmlFilePath.c_str();  

热点排行