2014-10-08 119 views
-2

我正在閱讀/ proc/diskstats(你可能會也可能不知道它),但是文件沒有那麼多,它輸出很多行和一些列/字段。我問,如果有人能告訴我如何檢索一行的列。爲那小塊數據。 謝謝。C從文件中讀取一行

+0

通過「一行的列」你是指一個字符? – RockOnRockOut 2014-10-08 16:19:13

+0

對不起,我不是字符串 – 2014-10-08 16:21:35

+0

我不知道該文件是如何配置的,但是如果該列上的字符串在它之前和之後有一個空格,那麼可以標記該行並獲取字符串。 – RockOnRockOut 2014-10-08 16:23:46

回答

1

我看了一下。輸出看起來是這樣的:

8月17日SDB1 15 0 38 28 0 0 0 0 0 28 28

所以我們確實有幾個數字(似乎是長整數),我們確實有一個字符串在第三個地方。

現在我們可以逐行讀取輸出了。對於那個fgets是標準C選擇。然後你可以使用sscanf來挑選不同的元素。沒有經過測試。像

sscanf(readline, "%d%s%d....", &var1, & var2 .... 

應該做的「技巧」,這不起作用的組合,你可能會嘗試讀取strtok行。

希望能給你一個想法。

+0

非常感謝 – 2014-10-08 18:07:13