MFC 读取文件出现乱码,急!!!

CFilefile;char*pBuf=NULL;DWORDdwFileLen;dwFileLen=file.GetLength();pBuf=newchar[dwFil... CFile file;
char *pBuf = NULL;
DWORD dwFileLen;
dwFileLen = file.GetLength();
pBuf = new char[dwFileLen+1];
//pBuf[dwFileLen+1] = 0;
memset(pBuf, 0, dwFileLen + 1);
file.Read(pBuf, dwFileLen);

file.Close();
AfxMessageBox(LPCTSTR(pBuf));
delete[]pBuf;
前面都读取出来了,就后面多了一些乱码,怎么解决此问题
展开
 我来答
bhtzu
推荐于2016-06-23 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4048万
展开全部
这个读取的代码没有什么问题。
你要先看,乱码是超出文件长度的存在还是在长度内的存在(对比文件属性中的详细大小),两种情况出现乱码的可能原因不同。
另外,就是看你的工程是UNICODE模式 还是多字节字符集模式,这个可能造成影响。
追问
工程是UNICODE模式,乱码是超出文件长度的存在,这个是什么原因呢?
追答
file.Read语句之后,加上pBuf[dwFileLen+1] = 0;试试。如果还是不行,之后加上CString str = pBuf; 试试。

应该就是编码转换和编码长度问题。
太平洋科技
优质机构答主

2021-04-11 · 百度认证:广东太平洋互联网信息服务有限公司官方账号,优质数码...
太平洋科技
向TA提问
展开全部

解压文件出现中文乱码怎么办解决办法

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式