如何读取*.txt中的内容? *.txt中的文件内容是以空格分开的,我要读取每一段的内容比如说这样:"csdn 我爱他 今天你来了吗 ....."后面的内容都是如此.有字母也有汉字,我的功能就是把这些内容读出来并且区分是字母还是汉字,各位大虾帮忙了!!!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CStdioFile file; if( !file.Open("d:\\1.txt", CFile::modeRead) ) { AfxMessageBox("can not open file!"); return; } CString strLine, strTemp; while( file.ReadString(strLine) ) { char *str = strLine.GetBufferSetLength(strLine.GetLength()); char *p; for ( p=strtok(str, " "); p!=NULL; p=strtok(NULL, " ") ) { strTemp = p; //这里解析strTemp是字符或者汉字 } } 同意楼上,使用CSTDIOFILE类解决问题 先将文本读到CString中,然后查找空格进行截取 CStdioFile f("your file name");CString str;while(f.ReadString(str))//一次读取一行{ ...在此用CString类函数处理是数据还是字符!} 此外对汉字和字符的区别判断:Turbo C中规定汉字码的ASCII码值大于0x80,所以用ascii码值可以判断到底是汉字还是字符 //用以下方法应该可区分字符或汉字 char *temp = str.GetBuffer(iLen); char ch; for(int i=0;i<iLen;i++) { ch=*temp++; //是占双字符宽度的字符或符号 if ( ch>31 && ch<127 ) { ...... } } CString str = "a我b靠c"; int nCharCount = 0;//字符个数 int nChineseCount = 0;//汉字个数 for(int i = 0; i < str.GetLength(); i++) { if( (BYTE)str[i] < 0x80 ) { nCharCount++; nChineseCount++; } else { nCharCount++; i++; } } c++程序连接数据库 单文档中插入IE控件的问题 有关拍照的硬件(摄像头)和软件 显示曲线上的坐标值 初学C语言 统计字数问题 [求助]急~~~如何在vc的mfc中读写sql server表的信息? 请问我想在对话框中设其背景为一张图片.怎么办呀? 计算公式 再开一贴,解决CFindReplaceDialog类创建的查找对话框的使用问题,(连同另一贴共200分)!? 问一问成就感的大虾,我想考一证书;比较有用的(公司比较喜欢的),时间别太长而且不会太贵的。大侠们别见笑,来者有分!小弟先谢谢了 shell函数? Dll创建时的简单问题 在线等...
if( !file.Open("d:\\1.txt", CFile::modeRead) )
{
AfxMessageBox("can not open file!");
return;
} CString strLine, strTemp; while( file.ReadString(strLine) )
{
char *str = strLine.GetBufferSetLength(strLine.GetLength());
char *p;
for ( p=strtok(str, " "); p!=NULL; p=strtok(NULL, " ") )
{
strTemp = p;
//这里解析strTemp是字符或者汉字
}
}
CString str;
while(f.ReadString(str))//一次读取一行
{
...在此用CString类函数处理是数据还是字符!
}
char *temp = str.GetBuffer(iLen);
char ch;
for(int i=0;i<iLen;i++)
{
ch=*temp++;
//是占双字符宽度的字符或符号
if ( ch>31 && ch<127 )
{
......
}
}
int nCharCount = 0;//字符个数
int nChineseCount = 0;//汉字个数
for(int i = 0; i < str.GetLength(); i++)
{
if( (BYTE)str[i] < 0x80 )
{
nCharCount++;
nChineseCount++;
}
else
{
nCharCount++;
i++;
}
}