public class StrBinaryTurn { //将Unicode字符串转换成bool型数组 public boolean[] StrToBool(String input){ boolean[] output=Binstr16ToBool(BinstrToBinstr16(StrToBinstr (input))); return output; } //将bool型数组转换成Unicode字符串 public String BoolToStr(boolean[] input){ String output=BinstrToStr(Binstr16ToBinstr(BoolToBinstr16 (input))); return output; } //将字符串转换成二进制字符串,以空格相隔 private String StrToBinstr(String str) { char[] strChar=str.toCharArray(); String result=""; for(int i=0;i字符串转换成Unicode字符串 private String BinstrToStr(String binStr) { String[] tempStr=StrToStrArray(binStr); char[] tempChar=new char[tempStr.length]; for(int i=0;i字符串格式化成全16位带空格的Binstr private String BinstrToBinstr16(String input){ StringBuffer output=new StringBuffer(); String[] tempStr=StrToStrArray(input); for(int i=0;i0;j--) output.append('0'); output.append(tempStr[i]+" "); } return output.toString(); } //将全16位带空格的Binstr转化成去0前缀的带空格Binstr private String Binstr16ToBinstr(String input){ StringBuffer output=new StringBuffer(); String[] tempStr=StrToStrArray(input); for(int i=0;i字符串转换为char private char BinstrToChar(String binStr){ int[] temp=BinstrToIntArray(binStr); int sum=0; for(int i=0; i字符串转换成字符串数组,以空格相隔 private String[] StrToStrArray(String str) { return str.split(" "); } //将二进制字符串转换成int数组 private int[] BinstrToIntArray(String binStr) { char[] temp=binStr.toCharArray(); int[] result=new int[temp.length]; for(int i=0;i<temp.length;i++) { result[i]=temp[i]-48; } return result; } }