public byte[] itob(int i) { byte[] b = {0 , 0 , 0 , 0} ; byte mod = 0 ; int j = b.length ; while(--j >= 0){ mod = (byte)(i & 0x7F) ; i = i >> 7 ; b[j] = mod ; if(i == 0) break ; } return b ; } public int btoi(byte[] b) { if(b.length > 4) return 0 ; int i = 0 ; for(int j = 0 ; j < b.length ; j++) i = i + (b[b.length-j-1]<<7*j) ; return i ; }
should be -128 to 127 我的图象数据是字节型的,但都是正数,也就是说是0---255之间的数据,但byte的范围是-127--128啊!我考虑过用int 型的数组,但这时候读图象的时候又出现问题,在JAVA里读byte型的数据很方便,但int型的呢?!哎另外就是图象的显示的时候,无论用MemoryImageSource还是类BufferedImage都不型啊!特请高手下山指教一二,谢谢!!
byte[] b = {0 , 0 , 0 , 0} ;
byte mod = 0 ;
int j = b.length ;
while(--j >= 0){
mod = (byte)(i & 0x7F) ;
i = i >> 7 ;
b[j] = mod ;
if(i == 0) break ;
}
return b ;
} public int btoi(byte[] b) {
if(b.length > 4) return 0 ;
int i = 0 ;
for(int j = 0 ; j < b.length ; j++)
i = i + (b[b.length-j-1]<<7*j) ;
return i ;
}
我的图象数据是字节型的,但都是正数,也就是说是0---255之间的数据,但byte的范围是-127--128啊!我考虑过用int 型的数组,但这时候读图象的时候又出现问题,在JAVA里读byte型的数据很方便,但int型的呢?!哎另外就是图象的显示的时候,无论用MemoryImageSource还是类BufferedImage都不型啊!特请高手下山指教一二,谢谢!!
int m2;
m2=(int)((m1+256)%256);