您的位置:首页 > 其它

两种解析EDIT控件上文本的方式

2010-05-16 14:36 302 查看
研究了那么久,在EDIT控件上解析一行一行文本的方式整理了一下:

设EDIT控件关联的变量为m_WriteEdit

一行一行的解析方法:

第一种:

int nLen=m_WriteEdit.GetLineCount();

int nStart=0;
for (int i=0;i<nLen;i+=1)
{

CString strBuf;

CString szText;
m_WriteEdit.GetWindowText(szText);
int nEnd=0;
nEnd=szText.Find(_T("/r/n"),nStart);
if (nEnd!=-1)
{
strBuf=szText.Mid(nStart,nEnd-nStart);
nStart=nEnd+2;
}
else
{

int a=szText.GetLength();
strBuf=szText.Right(a-nStart);
}

}

第二种:

int nLen=m_WriteEdit.GetLineCount();

for (int i=0;i<nLen;i+=1)
{

CString strBuf;
int nBeforeLen=m_WriteEdit.LineIndex(i);
int nLineLength=m_WriteEdit.LineLength(nBeforeLen);

strBuf=szText.Mid(nBeforeLen+i,nLineLength);//这个加i是我单步调试发现每次都少i,只好加上去,原理没搞清楚!!

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: