fun binaryToByteList(binaryString: String): List<Int> {
if (binaryString.length % 8 != 0) {
throw IllegalArgumentException("Binary string length must be a multiple of 8.")
}
return (binaryString.indices step 8).map { i ->
binaryString.substring(i, i + 8).toInt(2)
}
}
fun main() {
val binaryString = "10101110111010101110101001001011"
try {
val byteList = binaryToByteList(binaryString)
println("Byte List: ${byteList.joinToString(" ")}")
} catch (e: IllegalArgumentException) {
println("Error: ${e.message}")
}
}
/*
run:
Byte List: 174 234 234 75
*/