c語言 讀取檔案中某一行的前一行

2022-02-14 08:24:37 字數 3260 閱讀 1831

1樓:匿名使用者

1、用fgets函式可以讀取檔案中某行的資料,某列資料就必須一個一個讀入每行的第幾個字元,再存入到一個字串當中。

2、例程:

#include

#include

void main()

b[k]=0;

printf("第%d行資料:%s\n",i,a);

printf("第%d列資料:%s\n",j,b);

fclose(fp);}

2樓:匿名使用者

用純c語言不能實現這樣的功能,除非一次讀兩行,或者再新增一個或者兩個變數,在迴圈讀取資料的過程中將上次讀到的內容儲存下來.

另外,windows中可以使用filemap(檔案記憶體對映)的辦法來實現隨意訪問.

3樓:匿名使用者

絕對不可能實現的

要麼你就全部讀出來,或者對映到記憶體

或者你只有記住上一行的起始位置,用fseek將檔案指標移過去

4樓:匿名使用者

#include

using namespace std;

.....

string preline(""), curline("");

ifstream infile("file name");

while(getline(infile, curline)).....

preline = curline;

} infile.close();

如何用c語言,讀檔案中某行某列的資料。

5樓:匿名使用者

#include

#include

#include

int filetofile(char *namesrc, char *namedes);

char * getlinebuf(int line, int col, int len, char *filename);

說明:1.使用了記憶體實時分配,可以滿足讀取任意長度的字元

但是,需要呼叫時手動釋放記憶體,否則記憶體洩露。

2.對中文沒有判斷,會出現亂碼。

char * getlinebuf(int line, int col, int len, char *filename)

while(!feof(fp))}}

fclose(fp);

system("del log.txt");

return 0;}

6樓:匿名使用者

用fgets函式可以讀取檔案中某行的資料,某列資料就必須一個一個讀入每行的第幾個字元,再存入到一個字串當中。

例程:#include

#include

void main()

b[k]=0;

printf("第%d行資料:%s\n",i,a);

printf("第%d列資料:%s\n",j,b);

fclose(fp);}

7樓:

c的精髓→指標,會用指標就能解決了

8樓:狄特里希

lseek() 可以指定行

fgets()可以讀取一行

c語言如何從指定行讀取檔案

9樓:

#include

//從檔案p中接收第n行字串,儲存在str中//假設一行的文字內容不超過1000字元,如果估計超過,請自行修改函式中的1000

//如果打不開檔案,返回null

//如果檔案不足n行,返回null

//如果正獲得正常資料,返回str的地址

char *getfileline(char *p,int n, char *str)

for(i=1;i

if ((fgets(str,1000,fp))==null)fgets(str,1000,fp);

fclose(fp);

return str;

}int main()

10樓:匿名使用者

int m=0;

while(!feof(fp))

}不明白追問吧

c語言中如何將檔案中的某行的字串讀取出來?

11樓:

#include

#include

#include

#define maxcols 2000     //設定每行字元數不超過maxcols,根據變化調整

//獲取已經開啟檔案fp的第line行內容到stri,如果成功返回得到的位元組數,

//如果沒有那麼多行,返回-2

int getlinetxt(file *fp,int line,char *stri){

int i;

fseek(fp,0,0); //指標到檔案最開始for(i=0;i

12樓:匿名使用者

scanf("%s",s); //這是讀入一個字串,遇到空格回車就停止讀入

gets(s); //這個是讀入一整行,只有遇到回車才停止讀入

13樓:闊氣剋剋

所謂的某行你沒有給出確切的定義,通常讀檔案採用的方法是將檔案內容的全部,或者部分儲存在快取中,如果你是想讀取第幾行,那麼就可以使用字元指標,尋找快取中的'\n',並進行計數,找到想要的行。

如果想讀取的是某個關鍵字所在的行,同樣是可以使用字元指標,使用strncmp方法尋找關鍵字所在的位置,或者直接使用strstr方法查詢。

需求不明確的時候不容易確定最佳的查詢方式。

14樓:

#include

#include

void main ()

fprintf(stdout,"%s,%s,%d,%d\n",s1,s2,a1,a2);

}把abc def 10 20存在t.txt中讀取並儲存在 s1,s2,a1,a2輸出

15樓:匿名使用者

用fscanf()就可以啦,

char a[80],b[80];

int c,d;

file *fp=fopen("data.txt","r");

vb中如何讀取textbox中某一行內容

最好是放在listbox中,方便,如果你非要用textbox,你可以嘗試下面的 文字最後不能有空行,否則會有空白 參考private sub command1 click dim a dim i as integer a split trim text1.text vbcrlf randomize ...

EXCEL中如何插入一行還能引用上一行的公式

有以下方法可以 1,直接選擇有公式的那個單元格,複製 快捷鍵ctrl c 然後在你插入的那一行,要放公式的那一格里,貼上 快捷鍵ctrl v 這時候可以實現單元格內的公式複製。如果你只想複製值,記得在貼上以後,旁邊有出來一個選擇項,可以選擇,只有值。2,如果你要填寫的單元格,和被複制的公式所在單元格...

怎樣把向量賦值給矩陣中的某一行

以矩陣a為例。在matlab中,a i,j 表示的是矩陣a中第i行第j列的元素 a j 表示矩陣a中第j列的所有元素 a i,表示矩陣a中第i行的所有元素。單單取出某一行,比如a i,就是一個行向量,要改變該行向量的元素,即用另一個行向量b來替換將該行向量a i,則可以寫成 a i,b 注意 b必須...