CString截取字符串全攻略

例程1:(csdn) 

文件xxxx.dll去掉后面的.dll
方法1、 
char str[] = "xxxx.dll"
char*p;
p=strrchr(str, '.');
*p = 0;

方法2、 
CString str="xxxx.dll";
int n = str.ReverseFind('.')
str = str.Left(str.GetLength()-n-1);

例程2:(csdn) 

取得一个字符串中第一个 '?'号之前的字符 
方法1
CString m_char,m_disp;
m_disp="jadfueiuajdf?";
m_char="?";
if (!m_char.IsEmpty())
{
int index = m_disp.Find(m_char);
m_disp = m_disp.Right(m_disp.GetLength()-index-1);
}
返回m_disp就行 

方法2
CString temp=the.m_bb;
CString reslut=temp.Left(temp.Find("?")-1);

例程3:(csdn) 
一个CString类对象m_StrReceiveModem={ATS0=2 OK $03#}
如何截取从$开始的字符串 
方法1

CString m_StrReceiveModem;
int nPos = m_StrReceiveModem.Find('$');
if(nPos >= 0)
{
CString sSubStr = m_StrReceiveModem.Mid(nPos);//
包含$,不想包含时nPos+1
}

方法2
CString m_StrReceiveModem;
int nPos = m_StrReceiveModem.Find('$');
if(nPos >= 0)
{
CString sSubStr = m_StrReceiveModem.Right(StrReceiveModem.GetLength()-nPos);
}
}

 

 

//截取“$”到“#”的字符串

int first,last;

first= m_StrReceiveModem.Find("$");

last= m_StrReceiveModem.Find("#");

CString sSubStr = m_StrReceiveModem.Mid(first,last);

 

 

例程4: (fox)

 

 //根据路径解析出文件名

 

 CString m_Filepath = "E:\\fox_work\\vc_experiment\\hello.txt"

 int nPos = m_Filepath.Find('\\');
 CString sSubStr = m_Filepath;
  while (nPos)
  {
   sSubStr = sSubStr.Mid(nPos+1,sSubStr.GetLength()-nPos);  //取'\'右边字符串
   nPos = sSubStr.Find('\\');   //不包含'\',函数值返回-1 

       if (nPos==-1)   
         {
             nPos = 0;
          }
  }

         //最后sSubStr = "hello.txt"

转载于:https://www.cnblogs.com/solove/archive/2011/09/21/2184354.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值