码迷,mamicode.com
首页 > 编程语言 > 详细

【20160924】GOCVHelper MFC增强算法(4)

时间:2016-09-26 00:44:26      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:

//string替换
    void string_replace(string & strBigconst string & strsrcconst string &strdst)
    {
        string::size_type pos=0;
        string::size_type srclen=strsrc.size();
        string::size_type dstlen=strdst.size();
        while( (pos=strBig.find(strsrcpos)) != string::npos)
        {
            strBig.replace(possrclenstrdst);
            pos += dstlen;
        }

    }

字符串操作一直都是重要的基础操作。在图像处理的过程中,涉及到文件名等变换都需要字符串操作。string_replace中能够成块地换字符。虽然在std中可能已经有相关函数,不过既然我自己的这个用的比较熟悉,就是使用了。
//C++的spilt函数
    void SplitString(const stringsvector<string>& vconst stringc){
        std::string::size_type pos1pos2;
        pos2 = s.find(c);
        pos1 = 0;
        while(std::string::npos != pos2){
            v.push_back(s.substr(pos1pos2-pos1));
            pos1 = pos2 + c.size();
            pos2 = s.find(cpos1);
        }
        if(pos1 != s.length())
            v.push_back(s.substr(pos1));
    }
依然是增强了std中的相关功能,实际使用的时候非常有用。
//! 通过文件夹名称获取文件名,不包括后缀
    void getFileName(const stringfilepathstringname,stringlastname){
        vector<stringspilt_path;
        SplitString(filepathspilt_path"\\");
        int spiltsize = spilt_path.size();
        string filename = "";
        if (spiltsize != 0){
            filename = spilt_path[spiltsize-1];
            vector<stringspilt_name;
            SplitString(filenamespilt_name".");
            int name_size = spilt_name.size();
            if (name_size != 0)
                name = spilt_name[0];
            lastname = spilt_name[name_size-1];
        }
    }
前面的函数getfiles能够获得文件的真实路径。那么getFileName能够进一步处理,直接获得图片的名称。很多时候,图片读取了,需要处理一下,这个都是需要的。





【20160924】GOCVHelper MFC增强算法(4)

标签:

原文地址:http://www.cnblogs.com/jsxyhelu/p/5907648.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!