[問題] 關於讀檔

看板C_and_CPP作者 (感性之光)時間14年前 (2009/12/17 00:24), 編輯推噓8(8018)
留言26則, 10人參與, 最新討論串2/2 (看更多)
請問板上大神 如果要讀進一筆資料(是電話簿) EX: KIM 0923012345 CLAUDIA 0912888888 JENNY 0986028957 ALICE 035712121 BENSON 然後有缺少電話或名字的話不予紀錄(我用string存) 我要怎麼在不影響換行的情況下讀檔呢?? 本來想要用 for(.......) read<<name<<num; 可是若遇到缺少的情況就無法了Q___Q -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.249.144

12/17 00:25, , 1F
如果用getline 一次處理一行呢0.0
12/17 00:25, 1F

12/17 00:25, , 2F
先整行讀回來再從中接token判斷勒??
12/17 00:25, 2F

12/17 00:26, , 3F
樓上那個是什麼東西阿???
12/17 00:26, 3F

12/17 00:29, , 4F
有個疑問...名字會缺少嗎..蠻詭異的 少名字有電話
12/17 00:29, 4F

12/17 00:30, , 5F
切token, 打錯字了Orz 簡單說就是整行讀完再判斷分段.
12/17 00:30, 5F

12/17 00:42, , 6F
應該是只有電話會缺少,可以請樓上神手教導一下嗎XD
12/17 00:42, 6F

12/17 00:43, , 7F
token 是程式 parser 讀取的最小單位
12/17 00:43, 7F

12/17 00:44, , 8F
可以找一下 compiler 的書有相關介紹
12/17 00:44, 8F

12/17 00:57, , 9F
可是試著 看人名看電話之間 都會有一個空白鍵
12/17 00:57, 9F

12/17 00:57, , 10F
看有幾個空白鍵 來判斷 是否要記錄
12/17 00:57, 10F

12/17 00:58, , 11F
但是遇到 故意打空白鍵 就會完蛋了
12/17 00:58, 11F

12/17 01:02, , 12F
strtok
12/17 01:02, 12F

12/17 04:12, , 13F
比起樓上 原PO應該會比較習慣 stringstream
12/17 04:12, 13F

12/17 09:47, , 14F
對阿 可是遇到這種問題真的無法QQ
12/17 09:47, 14F

12/17 10:35, , 15F
無法?? 測資會很刁鑽嗎?? 如果都是這樣"文字 數字"的組
12/17 10:35, 15F

12/17 10:36, , 16F
合, 用簡單/暴力的字串分析就可以硬幹出來了啊....@_@"
12/17 10:36, 16F

12/17 10:38, , 17F
缺名字或缺電話的檢查分段, 或者再加判斷頭文字就行了.
12/17 10:38, 17F

12/17 10:46, , 18F
strtok應該會比較好用...可以加上isdigit判斷
12/17 10:46, 18F

12/17 17:46, , 19F
請問一下isdigit()可以判斷string是不是數字嗎??
12/17 17:46, 19F

12/17 18:11, , 20F
strtok 會破壞原本的 buffer, 好用是好用, 但也有不方便處
12/17 18:11, 20F

12/17 18:30, , 21F
isdigit 只能判斷一個char
12/17 18:30, 21F

12/17 18:53, , 22F
fprintf
12/17 18:53, 22F

12/17 18:53, , 23F
fscanf
12/17 18:53, 23F

12/17 19:15, , 24F
讀寫檔案喔!!!!
12/17 19:15, 24F

12/17 19:43, , 25F
...樓上 ?
12/17 19:43, 25F

12/20 13:29, , 26F
用C語言的函數fgets()一次讀一行,再配合sscanf分解
12/20 13:29, 26F
文章代碼(AID): #1BAGcyhf (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1BAGcyhf (C_and_CPP)