你可以把你的InputStream包装成DataInputStream那样操作就非常方便了
DataInputStream提供了读取的借口很方便,直接可以读取整型数据

解决方案 »

  1.   

    但是这样有一个问题,那就是我仍然需要读取byte的信息,那么既然DataInputStream dis=new DataInputStream(is);又需要对is进行操作,是不是用dis读取了一个整数以后,is也相应的移动了四个字节呢?
    还有个问题就是:
       手机编程的话,这样等于多开了一个 Stream,代价很大btw:  这个问题实际上用的SocketConnection sc,
       同时调用sc.openInputStream和sc.openDataInputStream会出错是吧?
      

  2.   

    楼上的朋友,指点一下怎么做吧!小妹比较急
    bow!!!
      

  3.   

    http://community.csdn.net/Expert/TopicView1.asp?id=3222720
      

  4.   

    int result = 0;
    for(int i = 0; i < 4; i++){
        byte temp = inputstream.readByte();
        result += ((int)temp)<<((3-i)*4);
        }
    大概就是这么个意思,没试过,不知道对不对
      

  5.   

    byte其实是int的子集一样,就像long包含int
    你直接将byte强制转换成int就行了,不用那么麻烦
    byte bt = ......
    int n = (int)bt;
      

  6.   

    楼上的,
    我不是这个意思,
    既然int是用四个字节来表示的,写入的int用一个byte来转换,自然不正确!
    to :cowboyseu
      我试试你的方法