java - java中将文本转换为二进制

标签 java binary

我想将字符串的每个字符转换为新的二进制字符串。这就是我所做的:

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/

相关文章:

java - Spring、MVC、Java,让单例 bean 每 5 秒执行一次操作?

java - java中数字的正则表达式

java - 使用 PHP 将数据从 Android 发送到 SQL 数据库

r - 如何使用 R 从二进制文件中读取 float 据

mysql - 在 Laravel 中存储 32 位二进制文​​件的正确方法

java - Maven 项目安装到 jar,尝试访问路径时出现 404

java - 将值从 java 传递到 jsp 或 servlet

c++ - 如何将字符串数组写入二进制文件?

arrays - 为什么用reqwest下载的PNG图像的字节与使用Python下载的字节不同?

sql - SQL/JDBC 中的内联 BLOB/BINARY 数据类型