近日在使用frida逆向过程中发现加密后的byte是一个数组,打印出来类似于[23, 22, 10, 34, ........45,23, 109,116],数组中的每个值,与ASCII值对应,即一个数值代表一个字符,每个字符合起来形成字符串。现分享一下Java中的Sting与byte互转的一种实现方法。
一,String转byte
String str = "hello world";
String arr1 = Arrays.toString(str.getBytes());
System.out.println(arr1);
二,byte转String
首先定义一个String转数组的函数文章来源:https://www.toymoban.com/news/detail-508180.html
private static int[] fromString(String string) {
String[] strings = string.replace("[", "").replace("]", "").split(", ");
int result[] = new int[strings.length];
for (int i = 0; i < result.length; i++) {
result[i] = Integer.parseInt(strings[i]);
}
return result;
}
再对每个数组中的值进行char转换,然后拼接成字符串文章来源地址https://www.toymoban.com/news/detail-508180.html
int[] i = fromString(arr1);
String str3 = "";
for (int j = 0; j < i.length;j ++){
str3 = str3 + (char)i[j];
}
到了这里,关于Java中String与byte互转的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!