在vc++中,如何从一个txt文本中将一个字符串(含中文)的中文提取出来,放到一个新的字符串中? 10
voidCFileDlg::OnButton2(){//TODO:Addyourcontrolnotificationhandlercodehereifstreaminf...
void CFileDlg::OnButton2()
{
// TODO: Add your control notification handler code here
ifstream inf;
inf.open("f4.txt",ios::in|ios::binary);
if(!inf)
{
cout<<"open f4.txt error.\n";
abort();
}
char a[10];
UpdateData();
strcpy(a,m_xuehao);//学号一共有多少位,连着多少位相同就是找到了
int len_a = GetLength(a);
int n=0;
int i=0;
string str;
getline(inf,str);
if(1) //(inf>>str)//输入串,添加#include string1.>> 从输入流读取一个string。<< 把一个string写入输出流。
{ //strcpy(b,str)
int len_str = str.length();//遇到空字符,流就截掉了
while(n<len_str)//一共比较n次
{
while(a[i]==str[n+i]&&str[n+i]!='\0')
{i++;}//数组比较是从0-3的下标,i最后是4
if(i==(len_a))//连续有len_a个字符相等,就找到了
{
m_xingming.Format("姓名");//这里怎么取出汉字显示????
m_yuwen.Format("%d",(str[n+11]-48)*10+(str[n+12]-48));//默认是字符串读出
m_shuxue.Format("%d",(str[n+14]-48)*10+(str[n+15]-48));//默认是字符串读出
m_waiyu.Format("%d",(str[n+17]-48)*10+(str[n+18]-48));//默认是字符串读出
i=0;
}
else
i=0;
n++;
}
}
UpdateData(FALSE);
}
以上是mfc中onbutton的代码,问号处不知道怎么提取了。 展开
{
// TODO: Add your control notification handler code here
ifstream inf;
inf.open("f4.txt",ios::in|ios::binary);
if(!inf)
{
cout<<"open f4.txt error.\n";
abort();
}
char a[10];
UpdateData();
strcpy(a,m_xuehao);//学号一共有多少位,连着多少位相同就是找到了
int len_a = GetLength(a);
int n=0;
int i=0;
string str;
getline(inf,str);
if(1) //(inf>>str)//输入串,添加#include string1.>> 从输入流读取一个string。<< 把一个string写入输出流。
{ //strcpy(b,str)
int len_str = str.length();//遇到空字符,流就截掉了
while(n<len_str)//一共比较n次
{
while(a[i]==str[n+i]&&str[n+i]!='\0')
{i++;}//数组比较是从0-3的下标,i最后是4
if(i==(len_a))//连续有len_a个字符相等,就找到了
{
m_xingming.Format("姓名");//这里怎么取出汉字显示????
m_yuwen.Format("%d",(str[n+11]-48)*10+(str[n+12]-48));//默认是字符串读出
m_shuxue.Format("%d",(str[n+14]-48)*10+(str[n+15]-48));//默认是字符串读出
m_waiyu.Format("%d",(str[n+17]-48)*10+(str[n+18]-48));//默认是字符串读出
i=0;
}
else
i=0;
n++;
}
}
UpdateData(FALSE);
}
以上是mfc中onbutton的代码,问号处不知道怎么提取了。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询