我现在的程序是通过Socket与另一个硬件的程序通迅,现在我接收过来的值是byte[],因为我要把byte[]转换成String,通过比较普通的方法如:
String str = new String(byte);或者加编码样式,得到的str在后台打印或前台输出都是乱码,请问有什么办法能解决这一问题!谢谢!

解决方案 »

  1.   

    根编码格式有关,例如如果接收的是中文字符,可以用如下方法试试:
     String str=new String(byte,"gbk");
      

  2.   

    <% 
        String   funcname=   request.getParameter("funcname").trim(); 
        byte[]   tempbyte   =   funcname.getBytes("ISO-8859-1"); //这边是byte数组了。
        String   f=null; 
        f   =   new   String(tempbyte,"gb2312"); 
        
        
        % >