我正在使用 C++,但我决定使用sscanf
. 读取每一行后,它应该提取数据并将它们存储到变量中。
string test = "[06/03/2013 18:15:23] INFO - Open [Johny Cage]";
int day, month, year, second, minute, hour;
char name[128];
int c = sscanf(test.c_str(), "[%d/%d/%d %d:%d:%d] INFO - Open [%127[^\n]%c]",
&day, &month, &year, &second, &minute, &hour, name);
if (c == 7)
{
cout << name << endl;
}
我需要将名称读取为Johny Cage
(名称可能有空格)并将其存储到name
,但输出为:
约翰尼凯奇]
问题是尾随]
. 我怎样才能使用sscanf
它最后没有读到的]
?