Java - 检查字节数组搜索中的字节对齐方式

时间:2016-02-02 21:50:56

标签: java arrays bytearray

我有一些代码可用于在另一个byte []中查找byte []。我的问题是如何修改它,以便它只找到与字节对齐的匹配。我正在尝试制作与https://pythonhosted.org/bitstring/reading.html#find-rfind中的选项类似的内容。

public int indexOf(byte[] outerArray, byte[] smallerArray) {
    for(int i = 0; i < outerArray.length - smallerArray.length+1; ++i) {
        boolean found = true;
        for(int j = 0; j < smallerArray.length; ++j) {
           if (outerArray[i+j] != smallerArray[j]) {
               found = false;
               break;
           }
        }
        if (found) return i;
     }
   return -1;  
}

来自python的示例:

s = ConstBitStream('0x012340001234')
found = s.find('0x1234',bytealigned=False)
(4,)
found2 = s.find('0x1234',bytealigned=True)
(32,)

0 个答案:

没有答案