vc 将cstring类型字符串写入指定的本地txt文件中,在文件中只显示字符串的第一个字符,不知道是什么问题

CStringstr((LPCTSTR)sz);FILE*fp;fp=fopen("Read.txt","w+");if(fp==NULL)//如果失败了{printf(... CString str((LPCTSTR)sz);

FILE *fp;
fp=fopen("Read.txt","w+");
if(fp==NULL) //如果失败了
{
printf("文件打开时发生错误!");
exit(1); //中止程序
}
MessageBox(str);
int num;
num=fprintf(fp,"%s",str);

if (num<0)
{
printf("文件写入失败!");
exit(1);
}
fclose(fp); //关闭文件
没用过vc 请大神帮帮忙
展开
 我来答
百度网友b879c89
2013-02-21
知道答主
回答量:15
采纳率:0%
帮助的人:9.8万
展开全部
CString str((LPCTSTR)"你好啊");

FILE *fp;
fp=fopen("Read.txt","w+");
if(fp==NULL) //如果失败了
{
printf("文件打开时发生错误!");
exit(1); //中止程序
}
AfxMessageBox(str);
int num;
num=fprintf(fp,"%s",str);

if (num<0)
{
printf("文件写入失败!");
exit(1);
}
fclose(fp); //关闭文件
像你所写的代码,完全正确,也许是你的sz有问题,若要在Win32控制台上使用CString你要建立一个支持MFC的工程
还有
CString str; str = "你好啊";
也可以关于CString用法,百度很多,
其实你完全可以使用CFile(MFC的)
CFile file;
CString str = "你好啊";
if (TRUE == file.Open("Read.txt", CFile::modeReadWrite | CFile::modeCreate))
file.Write(str, str.GetLength() + 1); //GetLength()计算字符串大小,不包括\0, +1是为了写入NULL其实可以去掉
file.Close();
hw584521314
2013-02-20 · TA获得超过120个赞
知道小有建树答主
回答量:135
采纳率:50%
帮助的人:32.8万
展开全部
unicode的问题 可能是
追问
能说明白点吗 我不属性VC
追答
你用的vc6.0  还是vs2010?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式