c語(yǔ)言簡(jiǎn)單實(shí)現(xiàn)文件 r/w 操作方法
數(shù)據(jù)的輸入和輸出幾乎伴隨著每個(gè) C 語(yǔ)言程序,所謂輸入就是從“源端”獲取數(shù)據(jù),所謂輸出可以理解為向“終端”寫(xiě)入數(shù)據(jù)。這里的源端可以是鍵盤(pán)、鼠標(biāo)、硬盤(pán)、光盤(pán)、掃描儀等輸入設(shè)備,終端可以是顯示器、硬盤(pán)、打印機(jī)等輸出設(shè)備。在 C 語(yǔ)言中,把這些輸入和輸出設(shè)備也看作“文件”。
文件及其分類(lèi)
計(jì)算機(jī)上的各種資源都是由操作系統(tǒng)管理和控制的,操作系統(tǒng)中的文件系統(tǒng),是專(zhuān)門(mén)負(fù)責(zé)將外部存儲(chǔ)設(shè)備中的信息組織方式進(jìn)行統(tǒng)一管理規(guī)劃,以便為程序訪(fǎng)問(wèn)數(shù)據(jù)提供統(tǒng)一的方式。
文件是操作系統(tǒng)管理數(shù)據(jù)的基本單位,文件一般是指存儲(chǔ)在外部存儲(chǔ)介質(zhì)上的有名字的一系列相關(guān)數(shù)據(jù)的有序集合。它是程序?qū)?shù)據(jù)進(jìn)行讀寫(xiě)操作的基本對(duì)象。在 C 語(yǔ)言中,把輸入和輸出設(shè)備都看作文件。
文件一般包括三要素:文件路徑、文件名、后綴。
由于在 C 語(yǔ)言中 '\' 一般是轉(zhuǎn)義字符的起始標(biāo)志,故在路徑中需要用兩個(gè) '\' 表示路徑中目錄層次的間隔,也可以使用 '/' 作為路徑中的分隔符。
下面給大家介紹C語(yǔ)言的文件讀寫(xiě)操作
直接上代碼:
#include<stdio.h> //1.創(chuàng)建一個(gè)文件file FILE* createFile(const char* path) { FILE* file = fopen(path,"w"); return file; } //2. 把buffer中的內(nèi)容寫(xiě)入file void fileWrite(FILE* file) { const char *buffer = "aabbccddeeff"; size_t len = fwrite(buffer,1,12,file); if(len > 0) { printf("write to file sucess! %zu\n", len); fclose(file); } } //3.把剛才寫(xiě)過(guò)的文件內(nèi)容讀到ch中 void fileRead(const char* path) { FILE* file_writed = fopen(path,"r"); char ch[20]={0}; size_t len = fread(ch, 1, 12, file_writed); if(len>0) { printf("read data size: %zu\n", len); printf("read data: %s\n", ch); fclose(file_writed); } } int main() { FILE* file = createFile("./test.txt"); if(file) { printf("create file sucess!\n"); } fileWrite(file); fileRead("./test.txt"); return 0; }
test.txt里的內(nèi)容為:
aabbccddeef
output:
create file sucess! write to file sucess! 12 read data size: 12 read data: aabbccddeeff -------------------------------- Process exited after 0.0432 seconds with return value 0 請(qǐng)按任意鍵繼續(xù). . .
以上就是用c語(yǔ)言簡(jiǎn)單實(shí)現(xiàn)文件 r/w 操作的詳細(xì)內(nèi)容,更多關(guān)于c語(yǔ)言文件 r/w 操作的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
編寫(xiě)C++程序使DirectShow進(jìn)行視頻捕捉
這篇文章主要介紹了如何編寫(xiě)C++程序來(lái)使DirectShow進(jìn)行視頻捕捉的方法,DirectShow是微軟公司在A(yíng)ctiveMovie和Video for Windows的基礎(chǔ)上推出的新一代基于COM(Component Object Model)的流媒體處理的開(kāi)發(fā)包,要的朋友可以參考下2016-03-03淺析C++調(diào)用Java的Jar包(帶參數(shù))問(wèn)題
這篇文章主要介紹了C++調(diào)用Java的Jar包(帶參數(shù))問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11C++ static詳解,類(lèi)中的static用法說(shuō)明
這篇文章主要介紹了C++ static詳解,類(lèi)中的static用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07