當前位置:首頁 » 編程語言 » c語言文件怎麼創建

c語言文件怎麼創建

發布時間: 2022-08-24 05:17:59

c語言問題,如何在文件夾里創建文件

使用文件操作函數即可創建文件。
1、C語言標准庫提供了一系列文件操作函數。文件操作函數一般以f+單詞的形式來命名(f是file的簡寫),其聲明位於stdio.h頭文件當中。例如:fopen、fclose函數用於文件打開與關閉;fscanf、fgets函數用於文件讀取;fprintf、fputs函數用於文件寫入;ftell、fseek函數用於文件操作位置的獲取與設置。
2、常式:
#include<stdio.h>
int a;
char b,c[100];
int main(){
FILE * fp1 = fopen("input.txt", "r");//打開輸入文件
FILE * fp2 = fopen("output.txt", "w");//打開輸出文件
if (fp1==NULL || fp2==NULL) {//若打開文件失敗則退出
puts("不能打開文件!");
return 0;
}
fscanf(fp1,"%d",&a);//從輸入文件讀取一個整數
b=fgetc(fp1);//從輸入文件讀取一個字元
fgets(c,100,fp1);//從輸入文件讀取一行字元串

printf("%ld",ftell(fp1));//輸出fp1指針當前位置相對於文件首的偏移位元組數

fputs(c,fp2);//向輸出文件寫入一行字元串
fputc(b,fp2);//向輸出文件寫入一個字元
fprintf(fp2,"%d",a);//向輸出文件寫入一個整數

fclose(fp1);//關閉輸入文件
fclose(fp2);//關閉輸出文件,相當於保存
return 0;
}

❷ c語言怎麼創建文件,修改文件內容。

1.fopen()
fopen的原型是:FILE*fopen(constchar*filename,constchar*mode),fopen實現三個功能:為使用而打開一個流,把一個文件和此流相連接,給此流返回一個FILR指針。
參數filename指向要打開的文件名,mode表示打開狀態的字元串,其取值如下:
字元串含義
"r"以只讀方式打開文件
"w"以只寫方式打開文件
"a"以追加方式打開文件
"r+"以讀/寫方式打開文件,如無文件出錯
"w+"以讀/寫方式打開文件,如無文件生成新文件
一個文件可以以文本模式或二進制模式打開,這兩種的區別是:在文本模式中回車被當成一個字元』
』,而二進制模式認為它是兩個字元0x0D,0x0A;如果在文件中讀到0x1B,文本模式會認為這是文件結束符,也就是二進制模型不會對文件進行處理,而文本方式會按一定的方式對數據作相應的轉換。
系統默認的是以文本模式打開,可以修改全部變數_fmode的值來修改這個設置,例如_fmode=O_TEXT;就設置默認打開方式為文本模式;而_fmode=O_BINARY;則設置默認打開方式是二進制模式。
我們也可以在模式字元串中指定打開的模式,如"rb"表示以二進制模式打開只讀文件,"w+t"或"wt+"表示以文本模式打開讀/寫文件。
此函數返回一個FILE指針,所以申明一個FILE指針後不用初始化,而是用fopen()來返回一個指針並與一個特定的文件相連,如果成敗,返回NULL.
例:
以下是引用片段:
FILE*fp;
if(fp=fopen("123.456","wb"))
puts("打開文件成功");
else
puts("打開文件成敗");
2.fclose()
fclose()的功能就是關閉用fopen()打開的文件,其原型是:intfclose(FILE*fp);如果成功,返回0,失敗返回EOF。
在程序結束時一定要記得關閉打開的文件,不然可能會造成數據丟失的情況,我以前就經常犯這樣的錯誤。
例:fclose(fp);
3.fputc()
向流寫一個字元,原型是intfputc(intc,FILE*stream);成功返回這個字元,失敗返回EOF。
例:fputc(』X』,fp);
4.fgetc()
從流中讀一個字元,原型是intfputc(FILE*stream);成功返回這個字元,失敗返回EOF。
例:charch1=fgetc(fp);
5.fseek()
此函數一般用於二進制模式打開的文件中,功能是定位到流中指定的位置,原型是intfseek(FILE*stream,longoffset,intwhence);如果成功返回0,參數offset是移動的字元數,whence是移動的基準,取值是:
符號常量值基準位置
SEEK_SET0文件開頭
SEEK_CUR1當前讀寫的位置
SEEK_END2文件尾部
例:fseek(fp,1234L,SEEK_CUR);//把讀寫位置從當前位置向後移動1234位元組(L後綴表示長整數)
fseek(fp,0L,2);//把讀寫位置移動到文件尾
6.fputs()
寫一個字元串到流中,原型intfputs(constchar*s,FILE*stream);
例:fputs("ILoveYou",fp);
7.fgets()
從流中讀一行或指定個字元,原型是char*fgets(char*s,intn,FILE*stream);從流中讀取n-1個字元,除非讀完一行,參數s是來接收字元串,如果成功則返回s的指針,否則返回NULL。
例:如果一個文件的當前位置的文本如下:
Love,IHave
But……..
如果用
fgets(str1,4,file1);
則執行後str1="Lov",讀取了4-1=3個字元,而如果用
fgets(str1,23,file1);
則執行str="Love,IHave",讀取了一行(包括行尾的』
』)。
8.fprintf()
按格式輸入到流,其原型是intfprintf(FILE*stream,constchar*format[,argument,…]);其用法和printf()相同,不過不是寫到控制台,而是寫到流罷了。
例:fprintf(fp,"%2d%s",4,"Hahaha");
9.fscanf()
從流中按格式讀取,其原型是intfscanf(FILE*stream,constchar*format[,address,…]);其用法和scanf()相同,不過不是從控制台讀取,而是從流讀取罷了。
例:fscanf(fp,"%d%d",&x,&y);
10.feof()
檢測是否已到文件尾,是返回真,否則返回0,其原型是intfeof(FILE*stream);
例:if(feof(fp))printf("已到文件尾");
11.ferror()
原型是intferror(FILE*stream);返迴流最近的錯誤代碼,可用clearerr()來清除它,clearerr()的原型是voidclearerr(FILE*stream);
例:printf("%d",ferror(fp));
12.rewind()
把當前的讀寫位置回到文件開始,原型是voidrewind(FILE*stream);其實本函數相當於fseek(fp,0L,SEEK_SET);
例:rewind(fp);
13.remove()
刪除文件,原型是intremove(constchar*filename);參數就是要刪除的文件名,成功返回0。
例:remove("c:\io.sys");
14.fread()
從流中讀指定個數的字元,原型是size_tfread(void*ptr,size_tsize,size_tn,FILE*stream);參數ptr是保存讀取的數據,void*的指針可用任何類型的指針來替換,如char*、int*等等來替換;size是每塊的位元組數;n是讀取的塊數,如果成功,返回實際讀取的塊數(不是位元組數),本函數一般用於二進制模式打開的文件中。
例:
以下是引用片段:
charx[4230];
FILE*file1=fopen("c:\msdos.sys","r");
fread(x,200,12,file1);//共讀取200*12=2400個位元組
15.fwrite()
與fread對應,向流中寫指定的數據,原型是size_tfwrite(constvoid*ptr,size_tsize,size_tn,FILE*stream);參數ptr是要寫入的數據指針,void*的指針可用任何類型的指針來替換,如char*、int*等等來替換;size是每塊的位元組數;n是要寫的塊數,如果成功,返回實際寫入的塊數(不是位元組數),本函數一般用於二進制模式打開的文件中。
例:
以下是引用片段:
charx[]="ILoveYou";
fwire(x,6,12,fp);//寫入6*12=72位元組
將把"ILove"寫到流fp中12次,共72位元組
16.tmpfile()
其原型是FILE*tmpfile(void);生成一個臨時文件,以"w+b"的模式打開,並返回這個臨時流的指針,如果失敗返回NULL。在程序結束時,這個文件會被自動刪除。
例:FILE*fp=tmpfile();
17.tmpnam();
其原型為char*tmpnam(char*s);生成一個唯一的文件名,其實tmpfile()就調用了此函數,參數s用來保存得到的文件名,並返回這個指針,如果失敗,返回NULL。
例:tmpnam(str1);

❸ vc++編c語言的新建步驟是什麼

vc++編c語言新建文件方法:

1、打開vc++,點擊左上角的「文件」,在下拉菜單中選擇「新建」。

❹ 如何製作C語言頭文件

方法和詳細的操作步驟如下:

1、第一步,頭文件被構建為在c文件中聲明函數,並包括宏定義, 必須有相應的c文件才能創建頭文件,見下圖,轉到下面的步驟。

❺ 用C語言創建文件

工具:華碩電腦

原料:C-Free5.0

1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。

❻ 如何建立c語言源文件

C語言的源文件,可以用任何一款文字編輯軟體編寫。只要保存為純文本文件,而且擴展名為.C文件即可。
用C語言的IDE集成環境編寫更為方便,它會自動調整縮進,以利於編輯、查錯,還可以編譯、試運行。

❼ 如何用c語言創建一個文件並按格式保存

1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。如下圖所示。

❽ 用C語言怎麼創建文件夾

在C語言中可以通過調用創建文件夾函數,或者使用系統命令兩種方法創建文件夾。
一、調用庫函數。
C語言庫函數創建文件夾依賴於編譯器,不同編譯器使用的創建文件夾函數不同。 舉例如下:
1、VC/VS編譯器。
函數聲明為 int _mkdir( const char *dirname );
頭文件為direct.h。
功能為創建dirname文件夾,並返回結果,如果成功則返回0,否則返回-1。
2、TC編譯器。
聲明形式為 int mkdir(char *pathname);
頭文件為dir.h。
功能為創建pathname文件夾,並返回結果,如果成功則返回0,否則返回-1。
3、gcc編譯器。
聲明形式為int mkdir(const char *pathname, mode_t mode);
其中函數頭文件為sys/stat.h, 參數類型mode_t頭文件為sys/types.h。
與其他編譯器的創建文件夾函數不同,gcc創建文件夾多了一個參數mode, 指定被創建文件夾的許可權。
函數功能為創建文件夾名為pathname, 許可權值為mode的文件夾。 如果成功則返回0,否則返回-1。
二、通過系統命令調用。
在C 語言中可以通過system函數調用系統命令,具體命令格式取決於操作系統。
比如在Linux/Unix下,可以使用:
system("mkdir ./XXX");
來創建XXX文件夾。
而在windows下需要使用dos命令,比如:
system("mkdir .\\XXX");

❾ c語言怎麼創建一個txt文件

c語言創建txt文件的步驟如下:

1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。

❿ 如何用C語言創建一個新文件

C語言可以通過fopen函數創建一個新文件。

細節如下:
1.
使用fopen需要添加頭文件
#include
<stdio.h>
2.
創建一個新的文本文件語句如下:
FILE
*fp=fopen("文件名",
"w");
3.
創建一個新的二進制文件的語句如下:FILE
*fp=fopen("文件名",
"wb");
4.
該函數詳細說明如下:

5.
函數原型:FILE
*
fopen(const
char
*
path,const
char
*
mode);
6.
返回值:文件順利打開後,指向該流的文件指針就會被返回。如果文件打開失敗則返回NULL,並把錯誤代碼存在errno中。
7.
參數說明:
參數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。
mode有下列幾種形態字元串:
r
以只讀方式打開文件,該文件必須存在。
r+
以可讀寫方式打開文件,該文件必須存在。
rb+
讀寫打開一個二進制文件,允許讀寫數據,文件必須存在。
w
打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。
a+
以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。
wb
只寫打開或新建一個二進制文件;只允許寫數據。
wb+
讀寫打開或建立一個二進制文件,允許讀和寫。
ab+
讀寫打開一個二進制文件,允許讀或在文件末追加數據。
例子代碼
FILE *fp; //定義文件指針
fp=fopen("d:\\out.txt","w");//打開文件
//寫文件的代碼
fclose(fp);
//關閉文件

熱點內容
設置js緩存時間 發布:2025-01-18 04:43:44 瀏覽:511
360路由怎麼改密碼 發布:2025-01-18 04:43:08 瀏覽:408
飛智手柄安卓手機如何 發布:2025-01-18 04:39:53 瀏覽:700
安卓手機收藏的東西在哪裡找 發布:2025-01-18 04:16:19 瀏覽:7
安卓手機網路無法使用怎麼辦 發布:2025-01-18 04:12:55 瀏覽:363
摩斯密碼的杠是什麼 發布:2025-01-18 04:06:52 瀏覽:808
winsock搜伺服器ip 發布:2025-01-18 03:49:32 瀏覽:394
安卓手機藍牙默認地址在哪裡 發布:2025-01-18 03:47:57 瀏覽:906
shell腳本文件路徑 發布:2025-01-18 03:40:31 瀏覽:483
sql語句執行錯誤 發布:2025-01-18 03:21:49 瀏覽:651