我在java中做了个socket的服务器,接收客户端程序用url类发送的http post请求,InputStream流读取数据,发现available()返回0,用read()还能读?我服务端接收数据有时接收不到,后来测试发现上述原因!这是我读取的部分代码:InputStream in=s.getInputStream();
String str="";
byte[] bytearray=new byte[1024];
do{
int len=in.read(bytearray,0,1024); System.out.println("len:"+len);
System.out.println("after:"+in.available());
str=str+new String(bytearray,0,len);
if(len<1024)
break;
}while(in.available()>0 );
String str="";
byte[] bytearray=new byte[1024];
do{
int len=in.read(bytearray,0,1024); System.out.println("len:"+len);
System.out.println("after:"+in.available());
str=str+new String(bytearray,0,len);
if(len<1024)
break;
}while(in.available()>0 );
解决方案 »
- java 泛型
- 想创建一个有各种部件的窗口,一直没看出问题,可总出错,请哪位高手指点一下。。。
- 一组动态生成的按钮,代码如下,如何通过其变量名控制它
- 求救:关于 控制按钮的问题! JS 和JSP相关
- Properties类的问题,我怎么也保存不了对文件的修改 怎么了呀?
- 关于ThreadPoolExecutor 策略使用的问题
- 需要做一个学校教务管理系统,应该采用什么模式?
- Java线程启动后定时关闭如何实现
- MS的JDBC连接多实例的SQLSERVER2000,连接url应该怎么写?急
- printf如何解决中英文对齐
- java程序在没有按装虚拟机的系统上如何运行?
- applet中,重载了paint(),按钮啊什么的就不显示了
throws IOException返回此输入流方法的下一个调用方可以不受阻塞地从此输入流读取(或跳过)的字节数。下一个调用方可能是同一个线程,也可能是另一个线程。
类 InputStream 的 available 方法总是返回 0。 此方法应该由子类重写。
返回:
可以不受阻塞地从此输入流读取的字节数。
抛出:
IOException - 如果发生 I/O 错误。
我用这个类效果一样啊,有时收不到客户端发来的数据,只能收到http头。