以行為記錄項,空格為分隔符的日誌檔案解析

2021-06-27 06:16:36 字數 846 閱讀 6515

在實際應用中往往會發現這樣一些日誌檔案,它們以一行表示乙個記錄項,記錄項中的每個欄位間以空格來分隔。比如,如下日記檔案

name1 ***1 age1 height1 weight1

name2 ***2 age2 height2 weight2

從line中讀取第n個空格的位置

成功返回第n個空格位置,失敗返回null

*/static char * get_n_null(char *line, int n)

char *tmp = line;

int count = 0;

while(*tmp)

if(*tmp == ' ')

tmp++;

}/*最後乙個字段沒有空格,返回\0 前面乙個字元位置*/   

if((*tmp) == '\0')

return null;

}從line中讀取第num個字段,讀取的字段的內容儲存到field中,

成功返回0,失敗-1

*/static s_32 get_field(char *line, int num, char *field)

if((start = get_n_null(line, num-1)) == null)

if((end = get_n_null(line, num)) == null)

if((num - 1) == 0)

else

return 0;

}if((fp = fopen("***","r")) == null)

while(!feof(fp))

else

/*符合條件的字段,進行處理*/

}fclose(fp);

js擷取以空格作為分隔符的字串

使用split 函式切割出來的長度有兩種情況 備註 trim 函式是用於去除字串兩端的空白字元。該函式可以去除字串開始和末尾兩端的空白字元 直到遇到第乙個非空白字串為止 它會清除包括換行符 空格 製表符等常見的空白字元。1 切割出來的長度包含有空格 var value this item.value...

BAT delims以 (雙引號)作為分隔符

在delims 後連續寫上你的分隔符,空格必須放最後 分隔符有雙引號的話,表示式 delims tokens 就得去掉前後的雙引號 寫成delims tokens 而該表示式中的所有符號都要轉義,舉例如下 下面 塊實現的功能是在tmp.txt檔案中的第一行,以 為分隔符,提取第二段字串,並賦值給ve...

C 讀取以逗號為分隔符的數值

思想 全部讀到乙個字串裡,遇到 就換成空格,然後用這個字串構造乙個stringstream,用 讀到陣列裡。分為istream和ostringstream.1 std string name zeta 2 int age 27 34 ostringstream os 5 os name age 6 ...