如何在Array list android中存储字节数组?

时间:2016-02-10 11:35:58

标签: android bytearray

我没有得到在数组列表中存储byte []的方法。 使用字符串进行编码/解码无法正常工作。

请帮助。

2 个答案:

答案 0 :(得分:0)

试试这个:

List<Byte> array = new ArrayList<Byte>();
array.add((byte)1);
array.add((byte)3);
//etc..
Byte[] arrayBytes = array.toArray(new Byte[array.size()]);
byte[] byteArray = Bytes.toArray(array);

答案 1 :(得分:0)

实施

import java.util.ArrayList;
import java.util.List;

public class ByteArrayList {
  private List<Byte> bytesList;

  public ByteArrayList() {
    bytesList = new ArrayList<Byte>();
  }

  public void add(byte[] bytes) {
    add(bytes, 0, bytes.length);
  }

  public void add(byte[] bytes, int offset, int length) {
    for (int i = offset; i < (offset + length); i++) {
      bytesList.add(bytes[i]);
    }
  }

  public byte[] getArray() {
    byte[] bytes = new byte[bytesList.size()];
    for (int i = 0; i < bytesList.size(); i++) {
      bytes[i] = bytesList.get(i);
    }

    return bytes;
  }
}