0

我有一个非常大的字节数组。我想向后阅读它,直到找到像BEGIN:VCARD OR END:VCARD等这样的字符串。如果可能的话,我想逐行访问数组。

4

2 回答 2

3

这应该是一个简单的编码问题,使用String.lastIndexOf(String str, int fromIndex). 剩下的就看你了。


如果字节数组太大以至于将其转换为单个字符串会占用太多内存,则向后扫描数组以查找行边界,为每行创建一个字符串,并lastIndexOf在每行字符串上使用。

于 2013-03-18T09:19:48.990 回答
2

如果性能不是那么重要,您可以首先通过字节数组构造函数 (new String(byte[] bytes)) 构建一个字符串,然后 String.lastIndexOf(String str) 是您的朋友。它将为您提供给定字符串最后一次出现的位置。

于 2013-03-18T09:20:38.523 回答