接受端要求的数据类型是unsigned char 的数组,得通过什么发送?
请各位帮帮忙啊~~

解决方案 »

  1.   

    问题补充,我用的是UDP,那个byte的范围好像是-128到127,那如果我有一些数据是超过127的,那得怎么才能确保正确性
      

  2.   

    单字节字符集如ISO-8859-1就可以用的吧。上面,超过127自然就是负的。你具体出错的语句是?
      

  3.   


    做一个智能家居,用VC做的服务端,用户端打算用Java,只是发送一个unsigned char类型的数组啊
      

  4.   


    因为接收端要求的是unsigned char 类型的,所以用byte发送过去,一部分数据应该会不正确吧
      

  5.   

    网络传输都是一个一个二进制位的。你用 byte 发过去,组装是接收方的事情。
      

  6.   


    但是接收方我现在没法改里面的程序,它能保证如果我发一个超过127的数据能正确的转成unsigned char类型吗?
      

  7.   


    那就转换到-127~127即可。
    socket.getOutputStream().write()//很多重载方法
      

  8.   

    这里虽然用了byte,但是并没有用之做算术运算,应该是没有问题的,只要程序能编译。
    姑且试之
      

  9.   

    可以这样int var=63333;
    String t = String.valueOf(var);
    byte[] b = t.getByte();
      

  10.   

    谢谢大家啊
    我的问题已经解决,直接用byte就可以
    测试OK啊