當前位置:首頁 » 編程語言 » c語言寫入文件
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言寫入文件

發布時間: 2022-01-13 19:30:01

c語言怎麼將數據寫入文件

利用VC軟體通過代碼書寫就可以將數據寫入文件。

② C語言fwrite怎麼寫入文件

C語言fwrite寫入文件可以參考以下的代碼:

//定義一個學生結構體

structStudent_type

{

charname[10];

intnum;

intage;

charaddr[30];

}stud[40];

inti;

FILE*fp;//定義一個文件指針fp

fp=fopen("stu.dat","wb");//以二進制可寫方式打開stu.dat文件

//將40個學生的記錄寫入文件stu.dat中

for(i=0;i<40;i++)

fwrite(&stud[i],sizeof(structStudent_type),1,fp);

(2)c語言寫入文件擴展閱讀:

fwrite函數用法

size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream);

返回值:返回實際寫入的數據塊數目

1、buffer:是一個指針,對fwrite來說,是要獲取數據的地址

2、size:要寫入內容的單位元組數

3、count:要進行寫入size位元組的數據項的個數

4、stream:目標文件指針

5、返回實際寫入的數據項個數count

說明:寫入到文件的哪裡與文件的打開模式有關,如果是w+,則是從file pointer指向的地址開始寫,替換掉之後的內容,文件的長度可以不變,stream的位置移動count個數;如果是a+,則從文件的末尾開始添加,文件長度加大。

fseek對此函數有作用,但是fwrite函數寫到用戶空間緩沖區,並未同步到文件中,所以修改後要將內存與文件同步可以用fflush(FILE *fp)函數同步。

③ C語言:如何將數據寫入文件

原因:
使用fopen時參數不正確,你是用 w參數,若文件存在則文件長度清為0,即該文件內容會消失。每次都是重新清空並寫數據, 將w修改為a即可.
fopen函數說明見下方:
---------------
FILE * fopen(const char * path,const char * mode);
[編輯本段]函數說明
參數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。
mode有下列幾種形態字元串:
r 打開只讀文件,該文件必須存在。
r+ 打開可讀寫的文件,該文件必須存在。
rb+ 讀寫打開一個二進制文件,只允許讀寫數據。
rt+ 讀寫打開一個文本文件,允許讀和寫。
w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a 以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)
a+ 以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。 (原來的EOF符不保留)
wb 只寫打開或新建一個二進制文件;只允許寫數據。
wb+ 讀寫打開或建立一個二進制文件,允許讀和寫。
wt+ 讀寫打開或著建立一個文本文件;允許讀寫。
at+ 讀寫打開一個文本文件,允許讀或在文本末追加數據。
ab+ 讀寫打開一個二進制文件,允許讀或在文件末追加數據。

④ c語言 寫入數據 輸出文件

寫入數據,也就是從標准輸入讀數據,可以使用scanf,getchar,gets等輸入函數完成。

輸出文件,也就是寫文件操作,可以使用標准C文件介面完成,包括fopen,fclose, fwrite,fputs,fputc,fprintf等。

以讀入100個整型數,並輸出到文件為例,代碼如下:

#include<stdio.h>
intmain()
{
FILE*fp=fopen("out.txt","w");//以讀方式打開文件out.txt。
inti,a;
for(i=0;i<100;i++)//執行100次。
{
scanf("%d",&a);//讀入數據。
fprintf(fp,"%d",a);//寫到文件。
}
fclose(fp);//關閉文件。

return0;
}

⑤ C語言寫入文件,文件操作

//1樓回答的太多了

//看我的

#include<stdio.h>
#include <string.h>
main()
{
int flag=0;
FILE *fp;
char *p,strline[100]="\0",strinfo[100]="\0";
fp=fopen("data.txt","r");
puts("Please input ID");
gets(strinfo); //獲取用戶輸入的ID
while (fgets(strline,99,fp)) //循環讀每行用戶信息
{
if ((p=strstr(strline,strinfo))!=NULL) //用strstr函數檢查是否用戶信息中有用戶輸入的ID
{
flag=1;
puts("此人信息已存在"); //提示存在
}
}
if (flag==0)
{
puts("無此人信息");
}
}

⑥ C語言如何以插入方式寫入文件

這是不可能實現的。因為數據在硬碟上是連續保存的。
你真要插入的話,唯一的辦法是將插入點後面的所有數據都備份一下,然後等你輸入了待插入數據後(這意味著有若干位元組被覆蓋了,不過反正已經備份了),將備份的那些重新輸入到文件里。
當然,如果你是在文件開頭插入數據,就意味著要重新寫一遍整個文件,耗時會很長,但這也是不可避免的。
如果不想破壞原文件的話,可以使用一個臨時文件,修改完後刪除原文件,將臨時文件重命名為原文件的名字。

⑦ C語言如何寫入文本文件

1、首先輸入下方的代碼

#include <stdio.h>

int main()

{

//下面是寫數據,將數字0~9寫入到data.txt文件中

FILE *fpWrite=fopen("data.txt","w");

if(fpWrite==NULL)

{

return 0;

}

for(int i=0;i<10;i++)

fprintf(fpWrite,"%d ",i);

fclose(fpWrite);

//下面是讀數據,將讀到的數據存到數組a[10]中,並且列印到控制台上

int a[10]={0};

FILE *fpRead=fopen("data.txt","r");

if(fpRead==NULL)

{

return 0;

}

for(int i=0;i<10;i++)

{

fscanf(fpRead,"%d ",&a[i]);

printf("%d ",a[i]);

}

getchar();//等待

return 1;

}

⑧ c語言 如何將變數寫入文件

原因:
使用fopen時參數不正確,你是用
w參數,若文件存在則文件長度清為0,即該文件內容會消失。每次都是重新清空並寫數據,
將w修改為a即可.
fopen函數說明見下方:
---------------
file
*
fopen(const
char
*
path,const
char
*
mode);
[編輯本段]函數說明
參數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。
mode有下列幾種形態字元串:
r
打開只讀文件,該文件必須存在。
r+
打開可讀寫的文件,該文件必須存在。
rb+
讀寫打開一個二進制文件,只允許讀寫數據。
rt+
讀寫打開一個文本文件,允許讀和寫。
w
打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(eof符保留)
a+
以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。
(原來的eof符不保留)
wb
只寫打開或新建一個二進制文件;只允許寫數據。
wb+
讀寫打開或建立一個二進制文件,允許讀和寫。
wt+
讀寫打開或著建立一個文本文件;允許讀寫。
at+
讀寫打開一個文本文件,允許讀或在文本末追加數據。
ab+
讀寫打開一個二進制文件,允許讀或在文件末追加數據。

⑨ c語言中怎麼向文件中寫入數據啊 具體點 謝謝

不知你向文件輸入的是什麼數據,輸入數據的函數很多,有fputc(s,fp);有fwrite()函數、、、、
下面是想文件輸入字元,並把字元串中的小寫字元轉換成大寫字元:
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>

int main()
{
FILE *fp;
char filename[20];
printf("請輸入文件的名稱:");
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL)
{
printf("cannot open file ,,,\n");
exit(0);

}
printf("請輸入字元直至結束(ctrl +z):");
fflush(stdin);
char s;

while(scanf("%c",&s),=EOF)
{
if(islower(s))
s=toupper(s);//把小寫字元轉換成大寫字元
fputc(s,fp);

}

rewind(fp);//是位置指針重新返迴文件的開頭,此函數沒有返回值

if((fp=fopen(filename,"r"))==NULL)//以讀的方式打開文件
{
printf("cannot open file ,,,\n");
exit(0);

}

while(,feof(fp))
{
s=getc(fp);
putchar(s);

}

return 0;

}
測試:
請輸入文件的名稱:hello
請輸入字元直至結束(ctrl +z):hello world ,
Z
Z。

⑩ c語言文件的寫入

fprintf吧
實際代碼,你沒給數據結構,沒人能寫出來。