在mfc中获取的文件路径是cstring型,想用fread和fopen这样的函数读取文件

怎么弄?一定要用CStdioFile类吗?... 怎么弄?一定要用CStdioFile类吗? 展开
 我来答
bhtzu
2013-05-20 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4188万
展开全部
已经获取了CString类型的文件路径,一般推荐使用CFile或者CStdioFile进行文件操作。
fread也是可以的,打开的文件名参数使用cstring.GetBuffer(0)就可以了,不过注意工程最好不要是UNICODE模式,这种模式下fread会有一些麻烦。
更多追问追答
追问
用fopen打开文件时路径不能用cstring型,得是const char*型,怎么办?
追答
cstring.GetBuffer(0)啊,只要是非UNICODE模式,这样就得到char *了。
相思丶猫2C
2013-05-20 · TA获得超过1198个赞
知道小有建树答主
回答量:1432
采纳率:50%
帮助的人:952万
展开全部
我推荐使用fread和fopen。
先把CString转成const char*。
const char* path = str.operator LPCSTR();
fopen(...);
更多追问追答
追问
语句怎么有错
没有此成员
有个LPCWSTR但是显示不能用于初始化const char
追答
如果你用的是VC6,那么这就没错。
如果是vs,
如果程序是Unicode,那么
#include
CW2A path(wstr);
const char* p = path.operator LPCSTR();
如果是多字节,那就和vc6一样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式