两种解析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,只好加上去,原理没搞清楚!!
}
设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,只好加上去,原理没搞清楚!!
}
相关文章推荐
- 2.VC(custom)-两种解析EDIT控件上文本的方式
- 两种方式实现省市县三级联动(利用解析文本和json方式)
- 介绍两种常用的XML解析方式(NSXMLParser & GDataXMLNode)
- 全屏模式下处理Silverlight控件的两种方式
- 关于JavaScript中function的两种创建方式的解析
- MSComm两种方式处理通信控件
- Spark资源调度分配内幕解密:Driver在Cluster模式下的启动、两种不同的资源调度方式源码彻底解析、资源调度内幕总结
- elasticsearch核心知识--15.document id的手动指定与自动生成两种方式解析
- Spring两种注入方式解析
- xml的两种解析方式
- Json解析两种方式
- JAVA之XML解析的两种方式
- ModalPopupExtender控件主要有两种使用方式:客户端使用方式和服务器端使用方式
- Gson的解析Json数据的两种方式
- JSON与XML的区别比较以及xml两种解析方式的比较
- xml的两种解析方式sax和dom解析的区别
- C# TreeView控件 展示数据的两种方式
- iOS-XML文件解析(原生NSXMLParser和GDataXML两种解析方式)
- 在onCreate中获取控件大小的两种方式
- JAVA解析Excel文件的两种方式 --Poi技术