在java中将文本转换为二进制文件

时间:2016-04-10 19:14:33

标签: java binary

我想将String的每个字符转换为新的二进制字符串。这是我的工作:

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”。有没有人有想法?

1 个答案:

答案 0 :(得分:1)

你真正说的是“如何将字符的二进制字符串表示填充为7位”?

替换此行:

binaryResult += Integer.toBinaryString( (int) c);

有了这些:

String binString = Integer.toBinaryString( (int) c );
binaryResult += ("0000000" + binString).substring(binString.length());

这假设您只有7位字符...如果您需要更多,则将0添加到“00000”字符串以匹配您想要的字符串长度(带填充0)。