分享

c语言如何将printf产生的数据写到txt文件中

 dwlinux_gs 2014-09-12
  程序如下

#include <STDIO.H>

void main()
{
FILE *fp;  // 声明一个文件流类型的变量,FILE 为 stdio.h 里定义的
fp=fopen("1.txt","w"); //用 fopen 函数打开文件,第一个参数表示文件名,若不是当前
                               // 路径请加 \\ 号,如 C:\\Windows\\System32,"w" 表示写(write)
if (fp!=NULL) // 打开成功
  fprintf(fp,"%d",1);
// fp 文件流变量,"%d"写入格式,1 是写入的数据
}

程序执行后,只要你有权限写文件,那么将会在当前目录产生 1.txt

用记事本打开,里面有一个 1

像这样调用程序:
aaa.exe >1.txt  (重写)

aaa.exe >>1.txt  (追加)


printf函数的主要功能是按一定的格式将数据显示在(输出到)屏幕上,将数据写入txt文档(此文档一定要存在)的较好方法是使用函数fput()或fputs(),前者是一次写入一个字符,后者是一次写入一个字符串。一般的写入过程是,先打开文件,然后操作文件,最后记住要关闭文件。主要代码如下:
FILE *pf;
if((pf=fopen("你的txt文档名字","打开的模式"))==NULL;//你的txt文档最好放在当前目录下,打开的模式有r(只读)、w(只写)、a(追加)等以及相应的组合。
{
//打开失败,出错处理
}
else
{
lseek(pf,nPos,SEEK_CUR);//将文件指针从当前位置移动到nPos处
char szTxt[128];
memset(szTxt,0,sizeof(szTxt));
printf(szTxt,"%d",12345);
if((fputs(szTxt,pf))!=EOF)
{
//完成写入
}
else
{
写入出错
}
}
fclose(pf);



打开stdio.h,你会发现……对,就是他:freopen函数,意为在原有FILE基础上打开一个标准文件。好了,我们就利用这样的便捷,把stdout这个程序启动时被设定的FILE map到一个标准文件,这样,printf()函数就立即输出到指定文件中。记住要用fclose关闭stdout。
FILE * __cdecl freopen(const char *, const char *, FILE *);
freopen就像fopen一样方便
 

转自:http://www./club/showpost.asp?id=44096&t=o

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多