急,在线等!!!!!!!!!!!

LY198196900 2004-08-03 02:45:43
我的问题还没有解决啊,
dog 狗
pig 猪
cat 猫
duck 鸭
cattle 牛
这是我记事本的文件,我现在已经拆分了字符串,现在需要两个数组来分别存放英语和汉语,然后根据用户输入的英文来查找相应的中文。请大家给我源代码,谢谢
我打开文件和拆分字符串的源代码如下:
CFile file;
BOOL bRet;
CFileException e;
bRet = file.Open(".\\translate.txt",CFile::modeRead,&e);
DWORD fLength=file.GetLength() + 1;
char* m_myBuffer;
m_myBuffer= new char[fLength];
memset(m_myBuffer,0,fLength);
while(file.Read(m_myBuffer,fLength -1));
{
CString m_strEnglish="";
CString m_strChinese="";
CString str="";
TCHAR ch=' ';
int i=str.Find(ch);
m_strEnglish=str.Left(i);
m_strChinese=str.Right(str.GetLength()-i-1);
m_strChinese.Remove('\n');
}
file.Close();
delete m_myBuffer;
这里我是定义的CString类型,肯定是不行的。
...全文
83 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
LY198196900 2004-08-03
  • 打赏
  • 举报
回复
不是哈,主要我想通过这个对文件操作有点了解,文件大小就那么大,不考虑这个因素了
还有我用的是6。0 ,麻烦各位了。
whale 2004-08-03
  • 打赏
  • 举报
回复
一次就分配整个文件长度大小的缓冲区,太浪费了,要是文件很大,岂不是。。。。
while(file.Read(m_myBuffer,fLength -1));
{}
后面那个分号是手误还是....?
如果没有那个分号,这个循环应该只能执行一次,无法达到你的效果。

建议使用CStdioFile,CStdioFile提供了ReadString方法来从文本文件读入一行到一个CString对象(并且去掉了\n),然后你再拆分就可以。
w100 2004-08-03
  • 打赏
  • 举报
回复
用CStringList Class试试。
既然你用MFC的话。
或 直接用数组

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧