1. 程式人生 > >fgets用法

fgets用法

fgets()從檔案或者流中獲取字串。

stdin是標準輸入流

示例1:

char strBuf[1024];fgets(strBuf, sizeof(strBuf), stdin);//處理strBuf

示例2:

FILE* fp = fopen("some_file.txt""r");if(fp){char strBuf[1024];fgets(strBuf, sizeof(strBuf), fp);//處理strBuf}

fgets函式原型:char *fgets(char *str,int num,FILE *stream)

fgets從流檔案讀取至多num-1個字元,包含換行符,並把他們str志祥的字元陣列中。讀取字元直到遇到回車符或者EOF(檔案結束符)為止,或者讀入了所限定的字元數。

[例8-5] 從一個文字檔案test1.txt中讀出字串,再寫入令一個檔案test2.txt。
#i nclude<stdio.h>
#i nclude<string.h>
main( )
{
    FILE *fp1,*fp2;
    char str[128];
    if ((fp1=fopen("test1.txt","r"))==NULL)
    { / * 以只讀方式開啟檔案1 */
        printf("cannot open file/n");
        exit(0);
    }
    if((fp2=fopen("test2.txt","w"))==NULL)


    { /*以只寫方式開啟檔案2 */
        printf("cannot open file/n");
        exit(0);
    }
    while ((strlen(fgets(str,128,fp1)))>0)
    /*從檔案中讀回的字串長度大於0 */
    {
        fputs(str,fp2 ); /* 從檔案1讀字串並寫入檔案2 */
        printf("%s",str); /*在螢幕顯示*/
    }
    fclose(fp1);
    fclose(fp2);
}