C++处理txt文件常用功能方法

本文介绍了如何使用C++提取带有双引号的字符串内容,展示了replace_all_distinct函数用于替换字符串中的特定子串,并涵盖了数据类型之间的转换,如string转int、int转string和string转const char。还涉及了创建文件夹的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.当字符串中只有一对双引号,取引号里面的内容

//跳过第一个引号以前的字符,读下面字符,直到下一个引号前为止
int main()
{
        string source = "how are you = \"nihao\""int pos_1 = source.find("\"")int pos_2 = source.find_last_of("\"");
        string dest  = "";
        dest = source.substr(pos_1 + 1 ,pos_2 - pos_1 - 1)//substr(t1,t2) //含义:从t1位置读取t2长度的字符串
        cout<<"dest = " <<dest<<endl;
}

2.string替换所有指定字符串(C++)

参考:[1]

  string&   replace_all_distinct(string&   str,const   string&   old_value,const   string&   new_value)     
    {     
        for(string::size_type   pos(0);   pos!=string::npos;   pos+=new_value.length())   {     
            if(   (pos=str.find(old_value,pos))!=string::npos   )     
                str.replace(pos,old_value.length(),new_value);     
            else   break;     
        }     
        return   str;     
    }     
    int   main()     
    {       
        cout   <<   replace_all_distinct(string("12212"),"12","21")   <<   endl;     
    }     

3.数据类型转换

3.1 string转int


std::string str;
int i = std::stoi(str);

3.2 int转string

int i;
string str=to_string(i);

3.3 string转const char

const char a=string1.c_str();

4.创建文件夹

参考:[1]

#include <iostream>
using namespace std;

int main()
{
    string folderPath = "E:\\database\\testFolder"; 

    string command;
    command = "mkdir -p " + folderPath;  
    system(command.c_str());

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值