public static byte[] toByteArray(String[] arr) {
byte[] res = new byte[arr.length];
for (int i = 0; i < arr.length; i++)
res[i] = Byte.parseByte(arr[i]);
return res;
}
p.S.
在Java中,字节值是[-128;128)。因此"128"将抛出java.lang.NumberFormatException: Value out of range. Value:"128" Radix:10。您必须决定要对这些值执行什么操作:抛出异常,因为使用数据无效;或者将其转换为最接近的字节值,如"128" -> 127;或者甚至忽略这些值。此代码可能如下所示:
public static byte[] toByteArray(String[] arr) {
byte[] res = new byte[arr.length];
for (int i = 0; i < arr.length; i++) {
try {
res[i] = Byte.parseByte(arr[i]);
} catch(Exception e) {
res[i] = // TODO action for incorrect value
}
}
return res;
}
# 1 楼答案
请使用
Byte.parseByte(String)
执行此操作:p.S. 在
Java
中,字节值是[-128;128)。因此"128"
将抛出java.lang.NumberFormatException: Value out of range. Value:"128" Radix:10
。您必须决定要对这些值执行什么操作:抛出异常,因为使用数据无效;或者将其转换为最接近的字节值,如"128" -> 127
;或者甚至忽略这些值。此代码可能如下所示: