Java:如何将JTextArea文本转换为位字符串

Java:如何将JTextArea文本转换为位字符串,java,Java,要将JtextArea文本转换为位字符串 我使用了两个JTextArea,一个用于输入,一个用于输出,还有一个按钮正在执行以下代码: StringBuilder sb = new StringBuilder(); int ssc =Integer.parseInt(jta1.getText()); String sc=Integer.toBinaryString(ssc); char[] bc=sc

要将JtextArea文本转换为位字符串

我使用了两个JTextArea,一个用于输入,一个用于输出,还有一个按钮正在执行以下代码:

StringBuilder sb = new StringBuilder();

int ssc =Integer.parseInt(jta1.getText());
                        String sc=Integer.toBinaryString(ssc);
                        char[] bc=sc.toCharArray();
                        for (char c : bc) {
                        sb.append("-");


int i =Character.getNumericValue(c);
                    String a = String.valueOf(i);
                    sb.append(a.toString());
                    jta2.setText(a);
Error           

    Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "dsa"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:449)
        at java.lang.Integer.parseInt(Integer.java:499)
        at MainFrame$2.actionPerformed(MainFrame.java:57)
Integer.parseInt(jta1.getText())

假设您试图解析的不仅仅是数字,上述情况会导致
NumberFormatException
。解析器只能解析像“1234”这样的数字字符串,而不能解析字母
“dsa”

java.lang.NumberFormatException:对于输入字符串:“dsa”

您可以做的是遍历字符,将每个字符转换为int,并附加每个字符的二进制字符串

for (char c : txt.toCharArrray() ) {
    String binaryOfCharacter = Integer.toBinaryString((int)c);
    // append to StringBuilder
}

注意:每个字符只返回七位表示

问题出在哪里?你能再解释一下吗?这是我在java.lang.NumberFormatException:输入字符串的线程“AWT-EventQueue-0”中单击button Exception时遇到的错误:java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)java.lang.Integer.parseInt(Integer.java:449)java.lang.Integer.parseInt(Integer.java:499)在MainFrame$2.actionPerformed(MainFrame.java:57)很明显,它正在将字符串转换为整数。在这里阅读,我明白了,非常感谢。