關於用Getline讀取檔案只能讀取首行的問題

2021-07-16 12:58:42 字數 712 閱讀 4344

自己再**中用getline讀取檔案時只能讀取首行,這個問題困擾了我很久,最開始我以為是函式沒有識別換行,任然再第一行讀取東西,但這個行getline這個函式的基本功能就相悖了,在稍作測試後我就換了其他思路,轉向其他方向。

void readman(list>m,char *filename)

int arr[7];

char buff[20];

for (int i = 0;i < 100;i++)

gtman man(arr);

gtm.push_back(gtman(man));

} ifile.close();

}

在了解getline()核心機制時我注意到,getline函式對於長度超過引數限定時就會自己設定乙個無效位,無效位後的檔案內容就不會讀取到這也是為什麼不能讀取後面內容的原因。修改後**如下:

void readman(list>m,char *filename)

int arr[7];

char buff[20];

for (int i = 0;i < 100;i++)

gtman man(arr);

gtm.push_back(gtman(man));

} ifile.close();

}

希望這次的經歷總結可以幫到和我遇到相同情況的同學。

用Python讀取檔案

讀取檔案的案例 opne是python中檔案讀取的內建引數,r指的是read,唯讀模式 f是file縮寫,常用在檔案返回的目標 encoding utf 8 轉換編碼模式 f open 檔案.txt r encoding utf 8 mystring f.read 讀取所有內容 f.close 關閉...

用async讀取檔案

const fs require fs 用於改造nodejs現有的非同步api 讓其返回 promise物件 從而支援非同步函式語法 const promisify require util promisify 呼叫promisify方法改造現有的非同步api 讓其返回promise物件 const...

關於C 檔案讀取

include include include include include define n 10000000 一千萬 int a n 1 void file 用於產生檔案的隨機數 void read cin void read scanf void read cin syn int main ...