C语言设计问题 TXT文件里找到特定字符或字符串后读出字符或者字符串后面的数据
比如说文件12334R1212312234R12342131334R154311764R1231输出文件位12123123421154311231...
比如说文件
12334R12123
12234R123421
31334R15431
176 4R1231
输出文件位
12123
123421
15431
1231 展开
12334R12123
12234R123421
31334R15431
176 4R1231
输出文件位
12123
123421
15431
1231 展开
展开全部
把数据存入一个文本文件,命名为DATA1.txt,与程序放在同一目录下。
程序如下:
#include<stdio.h>
#include<stdlib.h>
int main (void)
{
FILE *fp;
int k;
char ch ;
if( ( fp=fopen("DATA1.txt" , "r")) == NULL)
{
printf ( "\n Can not Open File \"DATA1.txt\" .\n");
return 0;
}
else
{
ch=fgetc(fp);
while ( ch !=EOF )
{
if(ch=='R')
{ fscanf (fp , " %d", &k);
printf ( "\n %d", k);
}
ch=fgetc(fp);
}
fclose(fp);
}
printf( "\n Finish .\n" ) ;
return 1;
}
程序如下:
#include<stdio.h>
#include<stdlib.h>
int main (void)
{
FILE *fp;
int k;
char ch ;
if( ( fp=fopen("DATA1.txt" , "r")) == NULL)
{
printf ( "\n Can not Open File \"DATA1.txt\" .\n");
return 0;
}
else
{
ch=fgetc(fp);
while ( ch !=EOF )
{
if(ch=='R')
{ fscanf (fp , " %d", &k);
printf ( "\n %d", k);
}
ch=fgetc(fp);
}
fclose(fp);
}
printf( "\n Finish .\n" ) ;
return 1;
}
追问
那么怎么把输出内容转进一个TXT文件呢
追答
两种方法,一种是再打开一个文件fp2(写方式),
fp2=fopen("OutPut1.txt" , "w");
把printf ( "\n %d", k);改为fprintf (fp2, "\n %d", k);
随之会增加一些配套的语句(比如fp2不能打开时的处理,程序结束后关闭fp2)
另外一种方法就是在上面的程序运行时用输出重定向的方式把输出到屏幕的内容写入一个文本文件。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询