Concatenation de byte array
Bonjour
j'essaye de concatener des bytes[] mais j'eprouve quelques difficultes pour ne pas perdre des donnees.
Au passage je souhaite modifier la valeur du premier bit par la commande
tmp_mb[0]+128 est ce que cela est possible ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
Vector records=new Vector();
records.addElement(record1);
records.addElement(record2);
//set MB for the first record
byte[] tmp_mb=((MyRecord)records.get(0)).toByteArray();
//tmp_mb[0]=(byte)(tmp_mb[0]+128);
int sizeOfLastRecord=tmp_mb.length;
byte[] ndef=new byte[tmp_mb.length];
byte[] tmp_ndef=tmp_mb;
System.arraycopy(tmp_mb,0,ndef,0,tmp_mb.length);
for(int i=1;i<records.size();i++){ byte[] tmp=((MyRecord)records.get(i)).toByteArray(); sizeOfLastRecord=tmp.length;
System.arraycopy(ndef,0,tmp_ndef,0,ndef.length);
tmp_ndef=new byte[ndef.length+tmp.length];
System.arraycopy(tmp,0,tmp_ndef,ndef.length,tmp.length);
ndef=tmp_ndef;
} |
sachant que je travail sous j2me et que je ne peut donc utiliser des arraylist linkedlist et Vector.toArray, est-ce quelqu'un peut me donner une solution pour gerer cette concatenation !
Merci d'avance