[問題] c++讀檔問題

作者: nckutaeyeon (成大小泰妍)   2017-12-20 00:39:08
開發平台(Platform): (Ex: Win10, Linux, ...)
Win10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
VC++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
請問當檔案每行的數據使用逗號隔開而不是空白時,讀檔要怎麼把它們完整的存到一個二
維vector呢?我有爬過相關文但它們的情況都是空白隔開的,謝謝各位大大
餵入的資料(Input):
Ex. Input.txt
1,2,3
4,5,6
7,8,9
預期的正確結果(Expected Output):
1 2 3
4 5 6
7 8 9
錯誤結果(Wrong Output):
1
2
3
4
5
6
7
8
9
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
作者: misclicked (misclicked)   2017-12-20 02:39:00
scanf("%d%c");
作者: achicn3 (Sher)   2017-12-20 03:06:00
你就把那錯誤結果push 進vector 就好了吧
作者: nckutaeyeon (成大小泰妍)   2017-12-20 11:27:00
可是讀檔時候的數據每行長度我沒辦法確定qq
作者: jasonwu23 (jasonwu)   2017-12-20 11:36:00
strtok
作者: Leadgen (新竹~)   2017-12-20 11:46:00
要指定一下分隔的token
作者: BlazarArc (Midnight Sun)   2017-12-20 12:44:00
標準沒提供split,可以用boost:splitdelimiter比較複雜就要用std::string::find_first_of刻
作者: jerryh001   2017-12-20 13:07:00
用cin.get()看是逗號還是換行就好了吧
作者: Darkautism (達卡特森)   2017-12-20 15:35:00
一行的事 scanf("%d,%d,%d", n1, n2, n3 );上面變數如果不是pointer要補&
作者: peterwu4 (notd)   2017-12-20 16:42:00
<algorithm>裡有個transform的函式https://ideone.com/GYa3Z8
作者: galic (嘎利)   2017-12-20 18:09:00
我猜原po的意思是輸入的2D vector的row/column size不是固定的 他舉的例子是個3x3 但也可能是6x2 1x7等等
作者: nckutaeyeon (成大小泰妍)   2017-12-20 18:52:00
謝謝各位!我用peter大大提供的方法成功了
作者: galic (嘎利)   2017-12-20 19:16:00
結果只是來討code...
作者: peterwu4 (notd)   2017-12-20 20:08:00
sorry...最近在練coding
作者: BRITRubbish (英式辣雞)   2017-12-24 22:51:00
又是仁暐計概XD

Links booklink

Contact Us: admin [ a t ] ucptt.com