❶ 請問一下 怎麼用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]);
}