在java中向后读取字节数组

时间:2013-03-18 09:13:39

标签: java android bytearray

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

2 个答案:

答案 0 :(得分:3)

使用String.lastIndexOf(String str, int fromIndex)应该是一个简单的编码问题。其余的由你决定。


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

答案 1 :(得分:2)

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