[C/C++基礎] 使用C語言一行一行連續讀檔將檔案字串存放到C++的vector變數中,之後再依序從vector變數中將值取出並透過C的字元陣列顯示出來

[C/C++基礎] 使用C語言一行一行連續讀檔將檔案字串存放到C++的vector變數中,之後再依序從vector變數中將值取出並透過C的字元陣列顯示出來

[C/C++基礎] 使用C語言一行一行連續讀檔將檔案字串存放到C++vector<string>變數中,之後再依序從vector<string>變數中將值取出並透過C的字元陣列顯示出來


 

vectorstringFILEpush_backfopenmemsetsize()strcpyc_str()fgets


Code:

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <vector>

using namespace std;

int main()

{
    // 使用C語言方式把檔案內容讀進來
    int i=0;
    FILE *pf='\0';
    char buf[513];
    string strbuf;
    memset(buf,0,sizeof(buf));// 清空記憶體

    
    vector<string> vec_file;
    vec_file.clear();
	
    pf=fopen("filelist.txt","r");
    while(fgets(buf,512,pf) != NULL)
    {
        buf[strlen(buf)-1]='\0';

        vec_file.push_back(buf);
    }
    fclose(pf);
	
    for ( i = 0 ; i < vec_file.size() ; i++ )
    {
        strbuf=vec_file[i];
		
        strcpy(buf, strbuf.c_str());
		
        printf("%s\n",buf);
    }

    return 0;

} 


發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *