首页 > 其他 > 详细

string用法

时间:2014-03-31 09:53:14      阅读:473      评论:0      收藏:0      [点我收藏+]

截取字符串

string strTributeInfo = "1#2#3#4#5#6#7";

vector<string> vecTribute;
StringUtil::Parse2Tokens(strTributeInfo,"#",vecTribute);

int StringUtil::Parse2Tokens(string strPackage, const string & strSplit, vector<string> & vecTokens)
{
    int nFound = strPackage.find(strSplit); //find 函数 返回strSplit 在strPackage中的下标位置


    while (nFound != -1)
    {

        //substr 方法 返回一个从指定位置开始,并具有指定长度的子字符串。
        string strToken = strPackage.substr(0, nFound);
        vecTokens.push_back(strToken);
        strPackage = strPackage.substr(nFound + 1, strPackage.length());
        nFound = strPackage.find(strSplit);
    }
    vecTokens.push_back(strPackage);

    return vecTokens.size();
}

将字符串转化成int类型

bool StringUtil::ParseString2Int(const string & strString, int & nRet)
{
   bool bRet = CheckIsNumber(strString);
   if (!bRet)
   {
      nRet = 0;
     return false;
   }

    sscanf(strString.c_str(), "%d", &nRet);

 //sscanf() - 从一个字符串中读进与指定格式相符的数据.

    return true;
}

bool StringUtil::CheckIsNumber(const string & strNumber)
{
    int nLoopCountStringLen = strNumber.length();
    int nLoopCount = -1;
   for (int j = 0; j < nLoopCountStringLen; j++)
   {
      char pCh = strNumber.at(j);
      if (j == 0)
     {
         if (pCh == ‘+‘ || pCh == ‘-‘) continue;
     }
     if (pCh >= ‘0‘ && pCh <= ‘9‘) continue;
     if (pCh == ‘.‘ && j < nLoopCountStringLen - 1) continue;

     // find non number
     return false;
   }
     return true;
}

string用法,布布扣,bubuko.com

string用法

原文:http://www.cnblogs.com/cci8go/p/3634725.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!