C语言如何将字符串写入文本文件?
从键盘输入一行字符,写入一个文件, 再把该文件内容读出显示在屏幕上。\x0d\x0a#include\x0d\x0amain()\x0d\x0a{\x0d\x0aFILE *fp;\x0d\x0achar ch;\x0d\x0aif((fp=fopen(“string”,”wt+”))==NULL)\x0d\x0a{\x0d\x0aprintf(“Cannot open file strike any key exit!”);\x0d\x0agetch();\x0d\x0aexit(1);\x0d\x0a}\x0d\x0aprintf(“input a string:\n”);\x0d\x0ach=getchar();\x0d\x0awhile (ch!=’\n’)\x0d\x0a{\x0d\x0afputc(ch,fp);\x0d\x0ach=getchar();\x0d\x0a}\x0d\x0arewind(fp);\x0d\x0ach=fgetc(fp);\x0d\x0awhile(ch!=EOF)\x0d\x0a{\x0d\x0aputchar(ch);\x0d\x0ach=fgetc(fp);\x0d\x0a}\x0d\x0aprintf(“\n”);\x0d\x0afclose(fp);\x0d\x0a}
c语言 文本文件的操作 字符写入
#includestdio.h
static
int
write_flag=1;
/*写文件标志,即是否要将字符串写入文件*/
void
function(char
*str)
{
int
i=0;
do
{
if((str[i++]==’b’)(str[i]==’y’)(str[i+1]==’e’))/*字符串中有“bye字串”*/
{
str[i+2]=’\0′;
/*截断字符串*/
write_flag=0;
/*写文件标志置
*/
break;
}
}while(str[i+2]!=’\0′);
}
int
main()
{
int
i,j;
char
str[100]={0};
FILE
*fp;
fp=fopen(“answer.txt”,”w”);
do
{
gets(str);
function(str);
fprintf(fp,”%s\n”,str);
}while(write_flag);
fclose(fp);
while(1)
gets(str);/*接收其他无效字符串。自己添加程序结束条件*/
return
0;
}
亲测通过!
C语言里如何把已有的字符串写入文件里?
设要写入的数字是int型,则用控制字符串%d和%s来完成,举例代码行如下:
fprintf(fp,”%d %s\n”,12345,”abcdefg”);
其中:fp是成功写打开文件的指针。此代码行先向文件写入整型数字12345,再加一个空格,接着写入字符串abcdefg,然后写入’\n’。
#include “stdio.h”
#include “string.h”
void main()
{
char a[6]=”china”;
char temp[1024];
int n=0;//记录有多少个china
FILE *outFile=fopen(“c:\b.txt”,”r+”);
FILE *inFile=fopen(“c:\a.txt”,”r+”);
while(fgets(temp,500,inFile)!=NULL)
{
int k=0;
for(int i=0;istrlen(temp);i++)
{
if(temp[i]==a[k] kstrlen(a))
{
k++;
}
else
{
if(k==strlen(a))
{
n++;
fprintf(outFile,”%s
“,a);
}
k=0;
}
}
}
}
在C盘要有这两个文件。。。
a文件中可能有多个china ,指定加到第几行自己看情况 在设置一个int变量记录就行了
C语言如何将一串字符和数字写入txt文本文档
#include stdio.h
main()
{
FILE *fp = NULL; //声明并初始化文件指针
char str[100] = “123456”; //声明并赋值str字符串数组变量
fp = fopen(“data.txt”,”w”); //只读方式打开文件
fputs(str,fp); // 写入str内容
fclose(fp); //关闭文件
}
C语言怎么把字符串用fprintf写入文本文件?
把把字符串写入文件,基本示例如下:
FILE *fp;
char s[]= “hello world!”;
char c = ‘\n’;
fp = fopen(“file.txt”,”a”);
fprintf(fp,”%s”,s); //字符串使用%s
fprintf(fp,”%c”,c); //字符使用%cfclose(fp);从文件读取到字符串char s1[30];fp=fopen(“file.txt”,”r”);fscanf(fp, “%[^\n]\n”, s1);printf(“%s\n”,s1);fclose(fp); 本来挺简单的一件事,可是让我头疼了好几个小时。
在前面写了fp = fopen(“file.txt”,”a”);
fprintf(fp,”%s”,s); //字符串使用%s
但是fclose(fp);这句被我写在了return 0;之前,然后字符串死活写不进文件里面去。后来终于发现是因为使用了while(1)循环读取端口数据,所以一直没有执行fclose(fp);这句,才导致文件里面一直是空的。所以fclose(fp);这句话不要忘记了哦~~ :)