導航:首頁 > 編程系統 > linuxrewind函數

linuxrewind函數

發布時間:2023-03-06 09:02:30

⑴ c語言如何讀寫 linux文本文件

Linux下C語言的文件(fputc,fgetc,fwrite,fread對文件讀寫操作)

//

fputc 向文件寫入字元

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp;

char ch;

if((fp=fopen("test.txt","w"))==NULL)

{

printf("不能打開文件 ");

exit(0);

}

while ((ch=getchar())!=' ')

fputc( ch, fp );

fclose(fp);

}

-------------

小提示:

fp=fopen("test.txt","w") ,把"w"改為 "a" 可以創建文件並且追加寫入內容

exit(0); 需要包含 stdlib.h 頭文件,才能使用

//

fgetc 讀取字元

#include <stdio.h>

#include <stdlib.h>

main( int argc, char *argv[] )

{

char ch;

FILE *fp;

int i;

if((fp=fopen(argv[1],"r"))==NULL)

{

printf("不能打開文件 ");

exit(0);

}

while ((ch=fgetc(fp))!=EOF)

putchar(ch);

fclose(fp);

}

文件結尾,通過判斷 EOF

//

fwrite 的使用

使數組或結構體等類型可以進行一次性讀寫

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","wb"))==NULL)

{

printf("不能打開文件");

exit(0);

}

printf("請輸入信息,姓名 年齡 分數1 分數2 地址: ");

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

{

scanf("%s %d %f %f %s",stu.name,&stu.age,&stu.score[0],&stu.score[1], stu.addr);

fwrite(&stu,sizeof(stu),1,fp1);

}

fclose(fp1);

}

//

fread 的使用

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","rb"))==NULL)

{

printf("不能打開文件");

exit(0);

}

printf("讀取文件的內容如下: ");

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

{

fread(&stu,sizeof(stu),1,fp1);

printf("%s %d %7.2f %7.2f %s ",stu.name,stu.age,stu.score[0],stu.score[1],stu.addr);

}

fclose(fp1);

}

//

fprintf , fscanf, putw , getw , rewind , fseek 函數

這些函數的話我就不演示了 ,

這些函數基本都一對來使用,例如 fputc 和 fgetc 一起來用.

⑵ linux下哪個系統調用函數可以得到指定目錄下的所有文件

opendir/readdir/closedir: 讀取目錄資訊
--------------------------------------------------------------------------------
#include
DIR * opendir(const char * pathname);
int closedir(DIR *dir);
struct dirent * readdir(DIR *dir);
int rewinddir(DIR *dir);
struct dirent {
long d_ino; /* inode number */
off_t d_off; /* offset to this dirent */
unsigned short d_reclen; /* length of this d_name */
char d_name [NAME_MAX+1]; /* file name (null-terminated) */
};
opendir開啟一個目錄操作DIR,closedir關閉之。
readdir則循序讀取目錄中的資訊。

以下是個標準例。
--------------------------------------------------------------------------------
#include <sys/types.h>
#include <direct.h>
char ** dirGetInfo(const char *pathname)
{
char ** filenames;
DIR * dir;
struct dirent * ent;
int n = 0;
filenames = (char **)malloc(sizeof(char*));
filenames[0]=NULL;

dir = opendir(pathname);
if (!dir) return filenames;
while ((ent = readdir(dir))) {
filenames = (char**)realloc(filenames,sizeof(char*)*(n+1));
filenames[n] = strp(ent->d_name);
n++;
}

closedir(dir);
filenames = (char **)realloc(filenames,sizeof(char*)*(n+1));
filenames[n] = NULL;
return filenames;
}

閱讀全文

與linuxrewind函數相關的資料

熱點內容
編程圖元屬性怎麼修改 瀏覽:828
word文檔的大括弧怎麼輸入 瀏覽:862
關於旅遊收入的數據從哪裡找 瀏覽:989
gson解析json集合問題 瀏覽:680
安卓ipsec標識符填什麼 瀏覽:215
在哪裡解壓文件第一分卷 瀏覽:63
奧維使用教程 瀏覽:324
編程程序怎麼轉到plc上 瀏覽:807
文件名沖突但是找不到 瀏覽:261
上海瑞金醫院app下載 瀏覽:998
qq群里的機器人買武器 瀏覽:428
捕魚達人歷史版本 瀏覽:73
mp4視頻文件解密軟體 瀏覽:62
多軸編程哪個軟體最方便 瀏覽:27
老平板哪個是顯示屏數據線插座 瀏覽:849
5sing上傳音頻文件格式 瀏覽:171
win10輸入文件滑鼠右鍵異常 瀏覽:634
聽幼兒故事用什麼app 瀏覽:514
iphone修改音頻文件名 瀏覽:53
國家氣象站點數據在哪裡下載 瀏覽:342

友情鏈接