截取字符串

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 StringUtil::IntToStr(const int &nValue)
{
        string strRent;
        stringstream ss;
        ss << nValue;
        ss >> strRent;

return strRent;
}

string用法的更多相关文章

  1. c++ std::string 用法

    std::string用法总结 在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询.在网上摘抄一下总结一下,为以后的查询方便: string类的构造函数: string(co ...

  2. String... 用法

    今天看到一个没见过的函数参数列表test(int... a),查看资料,原来是如下用法:类型后面三个点(String...),是从Java 5开始,Java语言对方法参数支持一种新写法,叫可变长度参数 ...

  3. C++ string 用法详解

    /////////////////////////////////////////////////////////////////////////////////// 任何人对本文进行引用都要标明作者 ...

  4. std::string 用法总结

    标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...

  5. std::string 用法

    string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化 string类的字符操作:const ...

  6. LIS的string用法

    题目链接 使用的是string里的find函数 stl大法好 #include<iostream> #include<cstdio> #include<cstring&g ...

  7. python的string用法

    s.strip().lstrip().rstrip(',') S.lower() #小写 S.upper() #大写 S.swapcase() #大小写互换 S.capitalize() #首字母大写 ...

  8. c++ string用法

    首先,为了在我们的程序中使用string类型,我们必须包含头文件 .如下: #include  //注意这里不是string.h string.h是C字符串头文件 1.声明一个C++字符串 声明一个字 ...

  9. iOS开发宝典:String用法大全

    一.NSString 创建字符串.  NSString *astring = @"This is a String!"; 创建空字符串,给予赋值.  NSString *astri ...

随机推荐

  1. SQL.WITH AS.公用表表达式(CTE)(转)

    一.WITH AS的含义    WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到.有的时候,是 ...

  2. java.net.SocketException: No buffer space available

    https 访问url在调用量不大的情况下 java.net.SocketException: No buffer space available (maximum connections reach ...

  3. CSS3-html,样式与样式表的创建,选择器

  4. ccpc_南阳 C The Battle of chibi dp + 树状数组

    题意:给你一个n个数的序列,要求从中找出含m个数的严格递增子序列,求能找出多少种不同的方案 dp[i][j]表示以第i个数结尾,形成的严格递增子序列长度为j的方案数 那么最终的答案应该就是sigma( ...

  5. 17996 Daily Cool Run (dp)

    时间限制:1000MS  内存限制:65535K 提交次数:0 通过次数:0 题型: 编程题   语言: 不限定 Description Daily Cool Run is a popular gam ...

  6. Web Service \restful web services\WCF Service\ServiceStack

    http://www.cnblogs.com/jfzhu/p/4025448.html http://www.cnblogs.com/jfzhu/p/4022139.html#3043243

  7. Linux下统计高速网络中的流量

    netpps.sh统计每秒数据量,包含接收(RX)或发送(TX) netpps.sh eth0 #!/bin/bash INTERVAL=" # update interval in sec ...

  8. [R]R的工作流

    最近处理数据时,一直在纠结程序的结构该如何构建,以减少很多简单又很耗时的工作. 刚好把Rob J Hyndman的blog给浏览了一遍,发现一篇2009年的文章,很有启发. 原文: Workflow ...

  9. C语言数组删除增加一个元素

    malloc,realloc,calloc一直很头疼,这次笔试题需要在数组后重新分配新的空间的代码是: //删除函数,删除ptr中的ptr[in]元素,n是数组原来的长度. void rmv(int ...

  10. 纯CSS打造银色MacBook Air(完整版)

    上一篇:<selection伪元素小解> ::selection{ background:blue; color:red; }p{font-size:14px;} 作者主页:myvin 博 ...