zoukankan      html  css  js  c++  java
  • c/c++ 收集string的操作汇总

    1.一次读取文本文件全部内容到string对象中:

    1 ifstream in("readme.txt", ios::in);
    2 istreambuf_iterator<char> beg(in), end;
    3 string strdata(beg, end);//或者string st;st.assign(beg,end);
    4 in.close();

    2.去掉string对象前面所有空格:

    /**********************************************************
    *
    *功能:去前空格
    *
    *str:源字符串
    *
    *反回值:去除前空格后的字符串
    *
    ***********************************************************/
    CUtils::STRING &CUtils::Ltrim(STRING &str)
    {
        str.erase(str.begin(), std::find_if(str.begin(), str.end(),
                                            std::not1(std::ptr_fun(::isspace))));
        return str;
     
    }

    3.去掉string对象后面的所有空格:

    /**********************************************************
    *
    *功能:去后空格
    *
    *str:源字符串
    *
    *反回值:去除后空格后的字符串
    *
    ***********************************************************/
    CUtils::STRING &CUtils::Rtrim(STRING &str)
    {
        str.erase(std::find_if(str.rbegin(), str.rend(),
                               std::not1(std::ptr_fun(::isspace))).base(),
                  str.end());
        return str;
     
    }

    4.去掉string对象的前后空格:

    /**********************************************************
    *
    *功能:去前后空格
    *
    *str:源字符串
    *
    *反回值:去除前后空格后的字符串
    *
    ***********************************************************/
    CUtils::STRING &CUtils::Trim(STRING &str)
    {
        return Rtrim(Ltrim(str));
    }

     5.string 转成char*的几种方式:

    把string转换为char* 有3中方法:
    1.data
    如:
    string str="abc";
    char *p=str.data();
    2.c_str
    如:string str="gdfd";
        char *p=str.c_str();
    3. copy
    比如
    string str="hello";
    char p[40];
    str.copy(p,5,0); //这里5,代表复制几个字符,0代表复制的位置
    *(p+5)='\0'; //要手动加上结束符
    cout < <p;
  • 相关阅读:
    【转】Java并发编程:阻塞队列
    【计算机二级Java语言】卷005
    【计算机二级Java语言】卷004
    【计算机二级Java语言】卷003
    【计算机二级Java语言】卷002
    【计算机二级Java语言】卷001
    【计算机二级C语言】卷020
    【计算机二级C语言】卷019
    【计算机二级C语言】卷017
    【计算机二级C语言】卷016
  • 原文地址:https://www.cnblogs.com/wainiwann/p/3056017.html
Copyright © 2011-2022 走看看