我从 TCP 侦听器接受了一个大字符串,格式如下
“1,7620257787,0123456789,99,0922337203,9223372036,32.5455,87,12.7857,1 / 1 / 2012,9223372036:1,7620257787,0123456789,99,0922337203,9223372036,32.5455,87,12.7857:2012/2/1 ,234234234:3,7620257787,01234343456789,99,0922337203,9223372036,32.5455,87,12.7857,1 / 1 / 2012,9223372036:34,76202343457787,012434343456789,93339,34340922337203,9223372036,32.5455,87,12.7857,1 / 1 /2012,9223372036”
您可以看到这是一个 : 分隔的字符串,其中包含以逗号分隔的字段的记录。
我正在寻找将字符串拆分为给定数量的块的最佳(最快)方法,并注意一个块应包含完整记录(字符串最多':')
或其他说法,不应该有任何不以以下结尾的块:
例如 20 MB 字符串到 4 个 5 MB 的块,每个块都有正确的记录(因此每个块的大小可能不完全是 5 MB,但非常接近它,所有 4 个块的总和将是 20 MB)
我希望你能理解我的问题(抱歉英语不好)
我喜欢下面的链接,但是在拆分时它并没有处理完整的记录,也不知道这是否是最好和最快的方法。