将字节格式字符串转换为字节数组android
问题描述:
由于我的系统的限制,我收到一个字符串格式的字符数组的JSON对象。它仅用于测试某些东西。将字节格式字符串转换为字节数组android
我得到了问题的字符串“[1,2,3,4]”,例如在android中,并想要转换它,所以我最终得到byte [] data = [1,2,3,4]。
使用getBytes显然不会返回我正在寻找的东西,而且我对这里可以做些什么还是有点无知。帮助将不胜感激!
编辑:我只是分析字符串来获取ints数组中的每个整数。有没有一种方法可以轻松地将它放入字节数组中?
感谢
答
试试这个:
private static byte[] doConvert(String inStr) {
String opStr = inStr.substring(1);
opStr = opStr.substring(0, opStr.length()-1);
int val;
String[] arr = opStr.split("[,]");
byte[] retVal = new byte[arr.length];
for (int i=0; i<arr.length; i++) {
opStr = arr[i].trim();
try {
val = Integer.parseInt(opStr);
} catch (Exception e) {
System.out.println("bad input at item #"+i+": "+opStr);
return null;
}
if (val > 255) {
System.out.println("bad input value at item #"+i+": "+val+" > 255");
return null;
}
retVal[i] = (byte) val;
}
return retVal;
}
**我接收中有一个字节数组** JSON对象,请在代码中指定的JSON格式的结构,因为我们在这里说android,希望你熟悉android中的org.json包,它有助于Json解析?更详细的说明会为你带来更好,更清洁的答案 – ShayHaned
你好,JSON部分并不是我真正遇到的问题。除非你知道JSON发送字节数组的方式。我的问题实际上只是将具有像[1,2,3,4]这样的字节数组格式的字符串转换为实际的字节数组[1,2,3,4] – lhbortho
,换句话说,您的意思是你是否有这样的,{“strNotBytes”:[“1”,“2”,“3”,“4”]},你希望将其转换成byte []数组或任何字节输出流,如果我没有错? – ShayHaned