[問題] fscanf 讀取 txt 檔

看板C_and_CPP作者 (高湯)時間16年前 (2009/12/13 22:48), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串1/1
想請問一下如果要把 test1.txt 內容完全複製到 test2.txt 用fscanf的指令 一次讀取一個字串 寫入一個字串 不過fscanf會忽略空白和換行字元 如果寫入每個字串時多寫入個空格 可以解決字串連在一起的問題 但是換行還是沒有辦法 雖然gets可以做到讀一行 寫一行 但是因為想要對每個字串個別做處理 所以才要讀字串 請問有改善的辦法嗎? 或是gets讀到包含空白字元的字串後 還能再分解成很多小字串? 原本程式碼 char buf[100]; FILE *fin, *fout; fin = fopen("text1.txt", "r"); fout = fopen("text2.txt", "w"); while(fscanf(fin, "%s", buf) != EOF){ fprintf(fout, "%s ", buf); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.172.224.227

12/13 22:50, , 1F
只要完全一樣複制 那用fread 不是更省事
12/13 22:50, 1F

12/13 23:46, , 2F
用gets 再搭配sscanf 不知這樣有沒有達到你的需求
12/13 23:46, 2F

12/15 04:44, , 3F
用 strtok
12/15 04:44, 3F
文章代碼(AID): #1B9Fx1Pn (C_and_CPP)