我有一个字符缓冲区,它将包含这种格式的文本。
somecontent...boundary="abc_is_the_boundary"
content-length=1234
--abc_is_the_boundary
somecontent
--abc_is_the_boundary
该缓冲区存储在char * buf
;
现在我的目标是确定abc_is_the_boundary
在这种情况下的边界值,并将该边界下缓冲区中的所有内容传递给一个函数,并获取一个将替换它的新字符串。甚至--abc_is_the_boundary
会被发送到函数。
所以在这种情况下,传递给函数的缓冲区将是
--abc_is_the_boundary
somecontent
--abc_is_the_boundary
处理后,说它返回xyz
。
内容长度已更改为 3,现在生成的缓冲区必须如下所示
somecontent...boundary="abc_is_the_boundary"
content-length=3
xyz
我可以使用 strstr 来识别边界值。但是如何找到边界的第一个实例和边界的最后一个实例?边界可以多次出现,但只需要找到第一个和最后一个。再次使用strstr可以修改content-length,到指定位置修改。是不是最好的办法。
我希望你已经明白