不懂,你想问什么?是想把int 付给 string 么,
若是如此, 可以用,  String a = String.valueOF(i) + ""  试一下,应给没问题

解决方案 »

  1.   

    是这样的,我有一个以前用dephi开发的应用系统,有一个密码验证过程,其中的密码是用上述的dephi函数加密保存在数据库中的,现在要在一个servlet中对实现这个验证过程,用的还是以前的数据,我从页面得到用户输入的密码明文,想用一个java方法(在javaBean中)加密后与从数据库中取得的密码(经dephi函数加密的)进行比较实现验证过程,现在的问题是如何用一个相同的密码明文,经java方法运算得到与原数据库中取得的密文完全相同,主要是汉字编码问题,例如,明文'hljdkh'用上述dephi函数运算得到的密文是'噻潆忾茔汴噻'现在的问题是要用java实现一个方法,输入'hljdkh',得到输出'噻潆忾茔汴噻'
    '
      

  2.   

        public static String encode(String src)
    {
      byte[] ch = src.getBytes();
      byte[] result = new byte[ch.length * 2];
      for(int i = 0; i < ch.length; i++) {
        result[i*2] = (byte)(ch[i]+120);
        result[i*2 + 1] = (byte)(ch[i]+127);
      }
      return new String(result);
    }
      

  3.   

    楼上的高人,多谢了,请帮我看一个这段代码为什么不对,马上给分 public  String encrypt(String source)
       {
            byte bt ;
            StringBuffer temp=new StringBuffer();
        int a1,a2;//asci码值
        int strLen=source.length();
            //source=new String(source.getBytes("ISO8859-1"));
        for(int i=0;i<strLen;i++)
            {
          a1=(int)source.charAt(i)+120;
              a2=a1+7;
              a1=(a1<<8)|a2;
              temp.append((char)a1);
            }
            return temp.toString();
      

  4.   

    因为在java里面,中文字符的存储使用的是Unicode,所以你算出来的a1并不是一个GB2312下
    的字符,
      

  5.   

    可是从数据库中取得的字符不也是用unicode表示的吗;在dephi中的密文'噻潆忾茔汴噻'与java中从数据库取得的密文的内码表示为什么会相同,在dephi中汉字的内码是GB2312,在java是的内码是unicode,它们为什么会相同?????还有a1的十六进制值是不是在(char)a1的时候发生了变化?????????
      

  6.   

    第一个循环内a1=0xe0e7,在delphi中由于使用GB2312编码所以a1代表了“噻”字符
    但是在java里面,0xe0e7由于使用Unicode,所以根本不是“噻”字符
      

  7.   

    它的算法与我的应该是一样的,ch[0]ch[1]放在一起与a2<<8|a2不是一样的结果吗,难道在
    new String()内码发生了变化,小弟愚味!!!!
      

  8.   

    ch[0]ch[1]放在一起之后得到的字符并不是a2<<8&brvbar;a2,
    java会通过一个算法把ch[0],ch[1]算出Unicode直=0x567B
      

  9.   

    是不是new String的时候进行这种转换的?
      

  10.   

    to ChDw(米) 
    我的QQ是:1344293
    留下你的QQ,交个朋友好吗???以后多请教