String str = text1.getText();
            //char[] chr = new char[str.length()];
            int len = str.length();
            StringBuffer bstr = new StringBuffer(str);
            for (int i = 0; i < str.length(); i++) {
                int q = (key.charAt(i % key.length()) >> (i % 32)) | (key.charAt(i % key.length()) << (32 - (i % 32)));
                bstr.setCharAt(i, (char) (str.charAt(i) ^ q));
            }
            text3.setText(String.valueOf(bstr));;我输入c都显示不出值..输入数字能.但是会丢值...
大家帮忙看看有什么错误3Q

解决方案 »

  1.   

    Exception in thread "main" java.lang.NumberFormatException: For input string: "quit"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
    at java.lang.Integer.parseInt(Integer.java:447)
    at java.lang.Integer.parseInt(Integer.java:497)
    at Main1.main(Main1.java:108)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)好多异常..
      

  2.   

    java.lang.NumberFormatException: For input string: "quit"格式转换错误
      

  3.   

    quit怎么能转换成int 类型的数据呢
      

  4.   

    (char) (str.charAt(i) ^ q));
    这里有问题,str.charAt(i)是字符,不能算数运算
      

  5.   

    想到达到我的目的应该怎么写呢?
    如下这样写丢失字符...
          String str = text1.getText();
                char[] chr = new char[str.length()];
                int len = str.length();
                StringBuffer bstr = new StringBuffer(str);
                for (int i = 0; i < str.length(); i++) {
                    int q = (key.charAt(i % key.length()) >> (i % 32))
                            | (key.charAt(i % key.length()) << (32 - (i % 32)));
                    bstr.setCharAt(i, (char) (str.charAt(i) ^ q));
                }
                for (int i = 0; i < len; i++) {                chr[i] = bstr.charAt(len - 1 - i);
                }
                text3.setText(String.valueOf(chr));