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