currentBinary = Integer.toBinaryString(256 + (int) aByte);
что эта строчка означает почему 256 + aByte что это дает
вот мое примитивное решение
String s = "";
String t = "0";
for (int i = 0; i < bytes.length; i++) {
s += Integer.toBinaryString(bytes[i]);
if (s.length() < 8){
while (s.length() < 8){
s = t + s;
}
} else if (s.length() > 8) {
s = s.substring(24);
}
System.out.print(s + " ");
s = "";
}
System.out.println();