我正在使用Akka来开发一个服务器应用程序,我想知道是否有一种“更清洁”的方法来获取ByteString
的子字符串 - 类似
bytestr.getSubstringAtFor(int start, int len): ByteString
或类似的。现在我正在将ByteString
转换为列表,创建另一个List[Byte]
,用for循环遍历它并将相关字节复制到我的新列表,然后将该字节列表转换回a ByteString
。
是否有“更清洁”的方法来获取ByteString的子字符串?
答案 0 :(得分:4)
您应该能够使用slice
获取一个连续的字节子集,其中包含一个包含起始索引的起始索引和一个独占的结束索引。例如,如果你有ByteString
包裹字符串" foobar"并希望获得ByteString
只是" oob"那会是这样的:
val bs = ByteString("foobar")
val subbs = bs.slice(1, 4)