MFC中,替换文本编辑框里面字符串的某段问题。
我的文本编辑框为IDC_EDIT2_ORDER,用来接收串口发送过来的字符串。现在接收到了一段字符串为***Hitanykeytostopautoboot:3(2...
我的文本编辑框为IDC_EDIT2_ORDER,用来接收串口发送过来的字符串。现在接收到了一段字符串为***Hit any key to stop autoboot: 3 ( 2 1 0***),星号表示其他字符串,括号里面表示将要接收到的字符串,3 2 1 0表示在读秒。我现在想把Hit any key to stop autoboot: 3替换成Hit any key to stop autoboot: 3=>,但是却出现了Hit any key to stop autoboot: 3=>=>=>=>=>=>=>=>=>=>=>=>=>=>=>=> 2 1 0***,的情况,请问是什么原因,我只想出现一个=>。求指点
我的相关程序如下:
CString str1="Hit any key to stop autoboot: 3";
CString str11="Hit any key to stop autoboot: 3=>";
string::size_type idx1 = m_ORDER.Find(str1);
if ( idx1 != string::npos )
{
m_ORDER.Replace(str1,str11);
}
这个是参考了网上的资料写的。 展开
我的相关程序如下:
CString str1="Hit any key to stop autoboot: 3";
CString str11="Hit any key to stop autoboot: 3=>";
string::size_type idx1 = m_ORDER.Find(str1);
if ( idx1 != string::npos )
{
m_ORDER.Replace(str1,str11);
}
这个是参考了网上的资料写的。 展开
展开全部
CString str1="Hit any key to stop autoboot: 3";
CString str11="Hit any key to stop autoboot: 3=>";
m_ORDER.Replace(str1,str11);
其他的代码都是多余的
至于出现好多个那个符号 是因为你调用多次的缘故 不想修改别的地方就改为
CString str1="Hit any key to stop autoboot: 3";
CString str11="Hit any key to stop autoboot: 3=>";
if(m_ORDER.Find(str11)==-1)m_ORDER.Replace(str1,str11);
updatedata(false);
CString str11="Hit any key to stop autoboot: 3=>";
m_ORDER.Replace(str1,str11);
其他的代码都是多余的
至于出现好多个那个符号 是因为你调用多次的缘故 不想修改别的地方就改为
CString str1="Hit any key to stop autoboot: 3";
CString str11="Hit any key to stop autoboot: 3=>";
if(m_ORDER.Find(str11)==-1)m_ORDER.Replace(str1,str11);
updatedata(false);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询