c語言如何從檔案中讀取一段含n的字串

2021-12-19 07:48:14 字數 3711 閱讀 8792

1樓:匿名使用者

1、可以使用fgets()函式從檔案中 讀一行字串,存入char 型陣列,自動含\n。

2、下面例程讀一行輸出1行。

#include

int main()

return 0;}

2樓:金色潛鳥

fgets() 讀一行字串,存入char 型陣列,自動含\n。

下面程式讀一行輸出1行。

#include

int main()

return 0;}

3樓:匿名使用者

如果是mfc的話,對新手推薦使用cstdiofile這個類.

cstdiofile pfile;

cstring tmp;

pfile.open("temp.txt",cstdiofile::modereadwrite);//開啟一個文字檔案,如果你沒有寫全檔案的路徑,則預設是在exe程式下的檔案。

pfile.readstring(tmp);//讀取文字的一整行字串,同時指標移動到下一行的起始位置。

//其它的操作

//pfile.close();//完成後關閉

4樓:

使用fread函式讀取指定長度的字串,即使包含\n也會被讀取,可以首先使用fseek定位到檔案結尾,然後ftell函式返回的值就是檔案的大小,這樣就可以用迴圈多次讀取檔案,直到讀取所有內容

file *file = null;

char szfile[1025] = ;

int nhadread = 0;

file = fopen( "file.txt", "r+");

if ( file == null )

return;

fseek( file, 0, seek_end ); //定位到檔案尾

int nlen = ftell( file ); //獲取當前位置,即檔案長度

fseek( file 0, seek_set ); //重新定位到檔案開頭,準備開始讀

while ( nhadread < nlen )

fclose(file);

大致過程就是這樣,純手打,沒有除錯過,可能有錯

c語言程式從檔案中讀取字串

5樓:留下痕跡的人生

學了結構體了沒?

學過結構體就用以下方法讀寫檔案

/* 寫檔案 */

#include

#include

#include

// 使用者資訊結構體

struct user_info;

int main()

struct user_info u;

strcpy(u.name, "xiaoming");

strcpy(u.***, "boy");

u.id = 12345678;

把資訊寫入到檔案中

close(fp);

return 0;

}/* 讀檔案 */

#include

#include

#include

struct user_info;

int main()

struct user_info u;

把讀取檔案

// 列印讀取的資訊

printf("name:%s ***:%s id:%d\n", u.name, u.***, u.id);

close(fp);

return 0;}

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

6樓:

#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

7樓:匿名使用者

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

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

8樓:闊氣剋剋

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

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

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

9樓:

#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輸出

10樓:匿名使用者

用fscanf()就可以啦,

char a[80],b[80];

int c,d;

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

c語言,如何在一個檔案中讀取某些資料,這些資料在一些特定的字串後面。

11樓:匿名使用者

字元擷取函式 函式名: strtok

功 能: 查詢由在第二個串中指定的分界符分隔開的單詞

用 法: char *strtok(char *str1, char *str2);

程式例:

#include

#include

int main(void)

函式第一次呼叫需設定兩個引數,strtok(str,",") str需要分割的串 「,」根據,分割

第一次分割的結果,返回串中第一個,之前的字串,也就是上面的程式第一次輸出abc

第二次呼叫該函式strtok(null,"."),第一個引數設定為null,第二個引數還是分割的依據

結果返回分割依據後面的字串,即上面的程式輸出d

12樓:

如果格式一樣的話用fscanf最簡單、

偽**:

int dummy;

fscanf(fp, "class %d age %d %d %d %d", dummy, dummy, dummy, dummy, dummy);

13樓:

先定位fseek,然後讀fread,當然傳入fread的引數是一個二維陣列,例如:data[0][0]

c語言,如何在檔案中讀取某些資料,這些資料在一些特定的字

字元擷取函式 函式名 strtok 功 能 查詢由在第二個串中指定的分界符分隔開的單詞 用 法 char strtok char str1,char str2 程式例 include include int main void 函式第一次呼叫需設定兩個引數,strtok str,str需要分割的串 ...

C語言問題,急重點是如何從 檔案中輸入值以及輸出到另 檔案中

動態分配一個檔案的所有大小的記憶體 讀入記憶體後,在處理你的檔案 檔案修改好後在寫入檔案即可!allocate memory to contain the whole file buffer char malloc sizeof char lsize 1 if buffer null resul f...

在c中如何將一段字串翻轉,C 中如何把一個字串裡面的各個元素倒過來,然後儲存的另一個字串中

例子string a abcde char b a.tochararray char temp for int i 0 i抄 符串長度有bai關du系,時間復 zhi雜度大概是 daoo n 2 public string turn string str return str 看一下這篇字串反轉的算...