从EDIT中读到的数据前面正常,后面有很多乱码?该怎么处理
从EDIT中读到的数据前面正常,后面有很多乱码?
LPTSTR lpstr;
lpstr=new char[255];
UpdateData(false);
int ncount=m_edit_mb.GetLineCount();
for(int i=0;i <ncount;i++)
{
m_edit_mb.GetLine(i,lpstr);
str1=lpstr;//str1是CString类型。
MessageBox(str1);
}
delete []lpstr;
------解决方案--------------------
lpstr的第一个字应该是缓存的长度,所以应该:
for(int i=0;i <ncount;i++)
{
*(LPWORD)lpstr = 255;
m_edit_mb.GetLine(i,lpstr);
str1=lpstr;//str1是CString类型。
MessageBox(str1);
}
LPTSTR lpstr;
lpstr=new char[255];
UpdateData(false);
int ncount=m_edit_mb.GetLineCount();
for(int i=0;i <ncount;i++)
{
m_edit_mb.GetLine(i,lpstr);
str1=lpstr;//str1是CString类型。
MessageBox(str1);
}
delete []lpstr;
------解决方案--------------------
lpstr的第一个字应该是缓存的长度,所以应该:
for(int i=0;i <ncount;i++)
{
*(LPWORD)lpstr = 255;
m_edit_mb.GetLine(i,lpstr);
str1=lpstr;//str1是CString类型。
MessageBox(str1);
}