【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
生活随笔
收集整理的這篇文章主要介紹了
【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 一、fgets 函數(shù)
- 二、fputs 函數(shù)
- 三、按照文本行的方式寫(xiě)文件
- 四、按照文本行的方式讀文件
一、fgets 函數(shù)
fgets 函數(shù) : 從 FILE *stream 指針指向的文件中 , 讀取一行文本數(shù)據(jù) , 將其存儲(chǔ)在 char *str 指針指向的內(nèi)存空間 , 最多讀取 n?1n-1n?1 個(gè)字符 ;
- 如果讀取的文本行字符個(gè)數(shù)小于 n?1n-1n?1 , 則讀取一整行數(shù)據(jù) ;
- 如果讀取的文本行字符個(gè)數(shù)大于 n?1n-1n?1 , 則讀取 n?1n-1n?1 字節(jié)數(shù)據(jù) ;
二、fputs 函數(shù)
fputs 函數(shù) : 將 const char *str 字符串寫(xiě)出到 FILE *stream 文件指向的文件中 ;
#include <stdio.h> int fputs(const char *str, FILE *stream);三、按照文本行的方式寫(xiě)文件
代碼示例 :
#include <stdio.h> #include <stdlib.h> #include <string.h>/*** @brief 主函數(shù)入口* @return*/ int main(int argc, char* argv[], char**env) {// 文件指針FILE *fp = NULL;// 文件路徑char *filename = "D:/File/file.txt";// 循環(huán)控制變量int i = 0;// 以 讀寫(xiě) 方式打開(kāi) 文本文件// 文件必須存在 , 如果文件不存在則報(bào)錯(cuò)fp = fopen(filename, "w+");// 將一行字符串寫(xiě)出到文件中fputs(filename, fp);// 關(guān)閉文件fclose(fp);// 如果沒(méi)有關(guān)閉文件 , 則需要等待文件執(zhí)行完畢后 , 才能將內(nèi)存緩存寫(xiě)出磁盤(pán)文件中// 命令行不要退出system("pause");return 0; }執(zhí)行結(jié)果 :
四、按照文本行的方式讀文件
代碼示例 :
#include <stdio.h> #include <stdlib.h> #include <string.h>/*** @brief 主函數(shù)入口* @return*/ int main(int argc, char* argv[], char**env) {// 文件指針FILE *fp = NULL;// 文件路徑char *filename = "D:/File/file.txt";// 接收字符串的數(shù)組char str[64];// 循環(huán)控制變量int i = 0;// 以 讀寫(xiě) 方式打開(kāi) 文本文件// 文件必須存在 , 如果文件不存在則報(bào)錯(cuò)fp = fopen(filename, "r+");while (!feof(fp)){// 從文件中讀取一行數(shù)據(jù)char *p = fgets(str , 64, fp);if(p != NULL){// 打印讀取到的文本行printf("%s\n", str);}}// 關(guān)閉文件fclose(fp);// 如果沒(méi)有關(guān)閉文件 , 則需要等待文件執(zhí)行完畢后 , 才能將內(nèi)存緩存寫(xiě)出磁盤(pán)文件中// 命令行不要退出system("pause");return 0; }執(zhí)行結(jié)果 :
總結(jié)
以上是生活随笔為你收集整理的【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【C 语言】文件操作 ( 按照单个字符的
- 下一篇: 【C 语言】文件操作 ( 按照内存块的方