C高人看下!

来源:百度知道 编辑:UC知道 时间:2024/06/18 01:26:04
CString s,t,FileName;
s="";(中间省略,S是变量)
int temp=0;
CFileDialog dlg(TRUE);
if (dlg.DoModal() == IDOK);
FileName=dlg.GetFileName();
CString str(FileName);
char* cat=str.GetBuffer(str.GetLength());
strcat(cat,".txt");
FILE *fp;
fp = fopen(cat,"w");
fputs(s,fp);
fclose(fp);
str.ReleaseBuffer();为什么创建的文件是.jpg.txt的啊!

FileName=dlg.GetFileName(); 这一句获得的文件名是带后缀名的,如果不想带后缀名dlg.GetFileTitle();但后面字符串的长度也要改变

搞了半天也运行不了你的代码.要是把把代码都考出来也就不用这么麻烦了.

我也看不懂代码 , 但是我看到了这句 .

strcat(cat,".txt"); /* 后面+上.txt后缀 */

不清楚你要实现什么功能,程序中用打开对话框打开了一个文件,然后创建了一个新文件,名称为原文件名后加.txt,比如打开的文件名是1.jpg,则新文件名为1.jpg.txt,并把字符串s写到新文件里。