❶ 请问一下 怎么用c语言实现读取一个txt文件里的数据 要按行读出来
由于不确定文件大小,所以定义data[][2]时,空间要开的足够大
或者实际读文件行数,然后动态定义data
读取上,可以先略过一行,然后循环调用fscanf直到文件结尾
❷ C语言读取文件内容,按行读
1通过fopen函数打开文本,例如file
*fp=fopen("in.txt","r");//返回一个file类型的句柄
2然后就可以通过fcanf()函数对txt文本进行读取
3操作完文本之后用fclose()函数
关闭已经打开的文件。
#include
int main()
{
int data;
file *fp=fopen("in.txt","r");
if(!fp)
{
printf("can't open file\n");
return -1;
}
while(!feof(fp))
{
fscanf(fp,"%d",&data);
printf("%4d",data);
}
printf("\n");
fclose(fp);
return 0;
}
❸ 关于C语言中文本文件的逐行读取的实现
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
C语言中文本文件的逐行读取的实现的代码如下:
#include<stdio.h>
main()
{
FILE * fp;
fp=fopen(“noexist”,”a+”);
if(fp= =NULL) return;
fclose(fp);
}
(3)c语言怎么按行读扩展阅读
1、如果输入文本每行中没有空格,则line在输入文本中按换行符分隔符循环取值。
2、如果输入文本中包括空格或制表符,则不是换行读取,line在输入文本中按空格分隔符或制表符或换行符特环取值。
3、可以通过把IFS设置为换行符来达到逐行读取的功能。
❹ C语言字符串 按行读取
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
int main()
{
int e=0;
char pjk[80]={0},pj[80]={0},fk[80]={0},dd[80]={0};
FILE *fc,*fp;
char *psz;//[100]={0};
int len=0;
int i=0;
int j=0;
int index[5]={0};
fc=fopen("参数.txt","rb");
fp=fopen("输出.txt","wb");
fseek(fc,0L,SEEK_END);
len=ftell(fc);//得到文件长度
fseek(fc,0L,SEEK_SET);
psz=(char*)malloc(len+1);//申请内存
memset(psz,0x00,len+1);
fread(psz,len,sizeof(char),fc);//读全部文件到内存
for (i=0;i<len;i++)
{
if('\r'==psz[i])
{
psz[i]=0;//将字符串切割
}
else if ('\n'==psz[i])
{
j++;
psz[i]=0;//将字符串切割
index[j]=i+1;//获取每一行开头索引
}
else
{
dd[i]=psz[i];
}
}
strcpy(dd,psz+index[0]);
e=atoi(psz+index[1]);
strcpy(pjk,psz+index[2]);
strcpy(pj,psz+index[3]);
strcpy(fk,psz+index[4]);
free(psz);//释放内存
fprintf(fp,"%s\r\n",dd);
fprintf(fp,"%d\r\n",e);
fprintf(fp,"%s\r\n",pjk);
fprintf(fp,"%s\r\n",pj);
fprintf(fp,"%s\r\n",fk);
fclose(fc);
fclose(fp);
}
❺ 如何用 C语言按行读取数据,且如何在每行数据前加A~
用 fgets() 一次可以读一行。
=========
下面程序 从abc.txt 文件按行读入,再添上 A~ 写入 def.txt
如果加一句 system(" /Y abc.txt def.txt");
就可以更新 abc.txt (也就是原输入文件的每行开始添加了A~
#include <stdio.h>
main(){
FILE *fin,*fout;
char one_line[4096];
fin=fopen( "abc.txt","r");
fout=fopen("def.txt","w");
while(1){
if (fgets(one_line,4096,fin)==NULL)break;
fprintf(fout,"A~%s",one_line);
}
fclose(fin);
fclose(fout);
// system(" /Y abc.txt def.txt");
return 0;
}
❻ 怎么用c语言实现读取一个.txt文件里的数据并要按行读出来
/*假设你的数据文件是d:\ttt.txt
用循环把数字读到数组a里面顺便显示出来 */
#include <stdio.h>
int main()
{
double a[100];
int i=0;
FILE* fp;
if((fp=fopen("d:\\ttt.txt","r"))==0)
{
printf("无文件!!\n");
return -1;
}
while(!feof(fp))
{
fscanf(fp,"%lf",&a[i]);
printf("%lf\n",a[i]);
i++;
}
fclose(fp);
return 0;
}
❼ 问个c语言整行读取文件的方法
1 打开文件 fopen("需要打开的路径", "打开的模式");
2 使用fgets函数读取行;
3 读取完成后,fclose关闭文件。
参考代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#defineMAX_LINE1024
intmain()
{
charbuf[MAX_LINE];/*缓冲区*/
FILE*fp;/*文件指针*/
intlen;/*行字符个数*/
if((fp=fopen("test.txt","r"))==NULL)/*打开文件*/
{
printf("failtoread");/*打开失败的情况*/
return(1);
}
while(fgets(buf,MAX_LINE,fp)!=NULL)/*整行读文件直到文件结束*/
{
len=strlen(buf);
printf("%s ",buf);/*输出获取到的数据*/
}
return0;
}
❽ c语言中从文件中按行读取字符串,并进行相应操作。
用fgets()就可以实现;
参考如下:
FILE
*fp;
char
str[256];
fgets(str,
256,
fp);
意思为从fp中读一行,放入str中;
如果需要记录行号的话,设定个量计数就可以。
❾ C语言怎样一行一行读文件
文件有三行有两种情况。一种是显示是在屏幕上显示三行,其实还是在一行,另一种是以换行符分割行。对第一种情况,遍历统计字符个数,计算出第三行起始地址,对第二种遍历以第二个换行符下一个地址作为第三行起始地址
❿ C语言 如何一行行读文件
#include
#include
void main()
{
char b[25];
//打开文件
FILE *fp;
fp = fopen("D:\\a.txt","r");
//获取文件内容,每次读一个字符,包括空格
for(int i=0;i<25;i++)
//fscanf(fp,"%c",&b[i]);
fgets(&b[i],2,fp);
fclose(fp);
//显示读取到的内容
for(int i=0;i<25;i++)
printf("%c",b[i]);
}