『壹』 c語言中,只讀文件,可讀寫文件,只寫文件是什麼
只讀文件是只能讀取文件的內容,不能對文件的內容進行修改,只寫文件是既能讀取文件內容又能修改文件內容,只寫文件是只能向文件中輸入,不能查看文件的內容。其實還有可執行文件,也就是可以運行的文件。
『貳』 關於C語言的讀寫
r的意思是以只讀方式打開文件,表示程序只能讀取文件中的內容,不可以把其他數據寫入文件,書本上說只讀的意思是只能輸入不可以輸出那是對程序而言的吧,只能從只讀文件中讀取內容輸入到程序,不能將程序結果輸出到只讀文件。
w意思是用「w」打開的文件只能向該文件寫入,書上說是「只能寫入而不能輸入」意思是: 只能由程序向該文件中寫入內容,不能將文件內容輸入到程序。
你沒有弄清說話的對象,還有樓主看的什麼書啊?找一本表述清楚的書啊~~C語言建議看C Primer Plus,C++建議看C++ Primer Plus,都是入門必看經典來著。
『叄』 c語言文件讀寫 實例
C語言標准庫提供了一系列文件I/O函數用於文件操作,比如fopen()用於打開文件、fread()、fwrite()用於讀寫文件、fseek()用於設置操作位置等等,一般C語言教程上都有文件I/O一章,細致內容,可以找本教科書學習一下。 下面的示例,是向名為1.txt的文件附加hello world字元串。
#include<stdio.h>
#include<string.h>
intmain()
{
FILE*fp=fopen("1.txt","a+");
if(fp==0){printf("can'topenfile ");return0;}
fseek(fp,0,SEEK_END);
charsz_add[]="helloworld ";
fwrite(sz_add,strlen(sz_add),1,fp);
fclose(fp);
return0;
}
『肆』 C語言如何判斷文件是否可讀寫
這個需要對文件加鎖才能,可以用fcntl函數實現
int lock(const char * filepath )
{
int fd = 0;
struct flock flock;
memset( &flock, 0, sizeof(flock) );
fd = open( filepath, O_RDWR,S_IRUSR|S_IWUSR );
if ( fd < 0 )
{
printf("open error!\n");
return ( -1 );
}
flock.l_type = F_WRLCK;
flock.l_whence = SEEK_SET;
flock.l_start = 100000;
flock.l_len = 0;
if ( fcntl( fd, F_SETLK, &flock ) ) //加鎖,如果失敗則等待10秒
{
printf("cannot set lock\n");
printf("the process will retry after 10 seconds\n");
sleep(10); //不同版本的sleep單位可能不一樣,有的是秒有的是毫秒,你自己看著改
if ( fcntl( fd, F_SETLK, &flock ) ) //加鎖,如果失敗則退出
return( -1 );
}
return( 0 );
}
後面的你懂吧
『伍』 c語言關於文件「讀」「寫」
在DOS下是,在Windows下不一定是,因為你可以讀一個超過你內存容量的巨大信息進"內存",其絕大部分都會被系統弄進swap,但這對你是完全透明的,除非你用內核編程的內存分配函數強行分配物理內存並讀入數據.
『陸』 請教高手:C語言在讀寫文件操作時,可以讀寫哪些數據類型,數據可以支持多少位
你要先定義一種數據格式
比如你要存的是
year 1990 month 12 day 01
那麼你在取的時候就同樣要按照這個格式去取,包括空格都要計算在內
存的時候吧1990轉換成字元去存,不知道可以用atoi和itoa函數不,你知己試試