-
我覺得它有效,我剛開始工作時做過一次,我記不太清楚了,但是你可以用 seek 函式嘗試一下,先找到它,然後再看它,我記得當我這樣做時,我讀了這本書 C 程式設計師,大約有 234 頁。
-
直接將要獲取的行數和前幾行的行數儲存到記憶體中(行數和 getline)。
您不必讀取其餘部分,因此可以讀取更少的記憶體。
-
使用 getline 函式,從檔案流中讀取每個檔案,然後和"語言成績"如果字串匹配,則將其新增到向量中,然後讀取所有字串,然後進行排序。 你明白嗎? 我不明白,我給你寫的。
-
本課程重點介紹讀寫檔案和一些成員函式在字串類中的應用。 #include #include
#include
#include
#include
using namespace std;int main()string strsearch;
cout<<"please enter the searchitem:";
cin>>strsearch;
string strline;
while (getline(ifile,strline))}int j=0;
string strtemp=str[0];
for (j=0;j:";
char c;
cin>>c;
if (c=='n')
return 0;
將資訊寫入專案中稱為文件的文件中。 剛敲完門。 如果您需要來源,請留下您的郵箱。
-
#include
char buf[512];
int main()
重定向輸入流命令列:prog <
-
這可以使用 C++ 庫函式 GetLine 來完成。
GetLine 生成乙個字串,其中包含從輸入流讀取的字串,直到發生以下情況導致此字串結束。
1)讀取檔案末尾;
2)遇到函式指定的終結器;
3)輸入到最大。
getline 有兩種型別的過載:
引數說明: buffer:讀取的資料將儲存在緩衝區中。
num:最多可以讀取 num 個字元。 也就是說,前面提到的最大金額。
delim:終結者,當遇到指定的終結者時,它將結束輸入。 在第一種型別的過載中,結束字元是,即遇到換行符的結尾。
所以要實現整行讀取,可以使用第乙個過載。 示例如下:
#include
using namespace std;
int main()
char buf[1024];儲存的 BUFF。
while(getline(buf,sizeof(buf)))。
cout <<"read line:" <
-
不幸的是,計算機不可能讀取時間複雜度為 o(1) 的 txt 檔案的第 n 行。
要讀取必須找到第 n-1 行 =>必須找到第 n-2 行....必須找到第 1 行。 所以,讀第5000行的字串只能一行一行地找,就像人看書一樣,要看第5000段(txt的第5000行其實是列印出來的5000段)必須逐段數,否則只能估計,不準確。
如果要查詢時間複雜度為 o(1) 的第 n 個“行”或第 n 個記錄,則必須使用“索引儲存”、“雜湊儲存”等,例如資料庫檔案。 具體細節可以學習“資料結構”、“資料庫原理”等。
#include
讀取檔名檔案(路徑),行哪行+1 個文字。
char * readspeacialline(char *filename, int whichline)
while (!feof(fp))
fgets(strline, 1024, fp);讀取一行並導航到下一行。
currentline++;
fclose(fp);關閉檔案。
return null;
int main()
-
#include
#define maxc 1024
int readspeacialline(int i)while (1)
elsewhile (1) }
end:fclose(fp);關閉檔案。
return ret;
使用 fgets 函式,一次讀取一行 fgets。
使用 memset 清除 strline 以防止最後乙個 strline 中的內容未被清除。
-
坐下來等待,應該沒有更好的方法來定位有多少行,除非首先載入檔案。
不明白 startmark 和 enterstumark 是什麼意思。
但文健<<"學生證"<<"\t"<<"名字"<<"\t"<<"語言"<<"\t"<<"計算機"<<"\t"<<"英語"<<"\t"<<"數學"“這句話一定有語法錯誤; >>>More