我想将字符串的每个字符转换为新的二进制字符串。这就是我所做的:
public static void main(String args[]) {
String MESSAGE = "%";
String binaryResult = "";
for (char c : MESSAGE.toCharArray()){
binaryResult += Integer.toBinaryString( (int) c);
}
System.err.println(binaryResult);
}
例如,输入:“%”,我得到以下输出:“100101” 我的问题是前导“0”被删除了...... 我想要:“0100101”。有人有想法吗?
最佳答案
您真正想说的是“如何将字符的二进制字符串表示形式填充为 7 位数字”?
替换这一行:
binaryResult += Integer.toBinaryString( (int) c);
有了这些:
String binString = Integer.toBinaryString( (int) c );
binaryResult += ("0000000" + binString).substring(binString.length());
这假设您只有 7 位字符...如果您需要更多字符,请在“00000”字符串中添加 0,以匹配您想要的字符串长度(填充 0)。
关于java - java中将文本转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36534346/