u010089114 2015-08-11 10:56 采纳率: 85.7%
浏览 2394

android开发字节转为String乱码问题

        PrintStream out = new PrintStream(
                    client.getOutputStream());              // 打印流输出
            out.println("啊啊");  
            System.out.println("设置完");

            BufferedInputStream buf = new BufferedInputStream(
                    client.getInputStream());       // 缓冲区读取

                        // 发送数据
            byte by[]=new byte[1024];
            /*for(int i=0;i<by.length;i++){
                by[i]=(byte) buf.read();
            }*/
               int byint = -1;
               int w = 0;
               while ((byint = buf.read()) != -1) {
                by[w] = (byte) byint;//将读取的整型转换为byte类型,并将此字节放入字节数组中。
                w++;
               }
            String s=new String(by,"UTF-8");
            System.out.println("字节流"+s);
            String sr=s.trim();
            //BufferedReader br=new BufferedReader(new InputStreamReader(buf,"UTF-8"));

            MyClientDemo.this.info.setText(sr);
            /*while((s=br.readLine())!=null){
                System.out.println("s有字符");
                System.out.println("接收到"+s);

            }*/
                // 设置文本

            out.close();                                    // 关闭输出流
            //buf.close() ;                                 // 关闭输入流
            client.close();
            无论是先把字节流转换为字符流的方式,还是把以byte的方式在String里进行转换都不行,服务端正常显示没有乱码,是UTF-8
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 对于相关问题的求解与代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作
    • ¥15 求NPF226060磁芯的详细资料
    • ¥15 使用R语言marginaleffects包进行边际效应图绘制