mysocket = sk;
PrintWriter out = new PrintWriter(mysocket.getOutputStream(),false);
BufferedReader br = new BufferedReader(in);
//!!!!! in = new InputStreamReader(mysocket.getInputStream());
//out.write(sendMsg); //通过 out向服务器写入信息。
out.println(sendMsg);
out.flush();
out.close() //最好加上 in = new InputStreamReader(mysocket.getInputStream()); //放到这!!!
strReceive = br.readLine();
PrintWriter out = new PrintWriter(mysocket.getOutputStream(),false);
BufferedReader br = new BufferedReader(in);
//!!!!! in = new InputStreamReader(mysocket.getInputStream());
//out.write(sendMsg); //通过 out向服务器写入信息。
out.println(sendMsg);
out.flush();
out.close() //最好加上 in = new InputStreamReader(mysocket.getInputStream()); //放到这!!!
strReceive = br.readLine();
解决方案 »
- 定时器里try catch 异常后,定时器挂了吗?
- Ext作excel导出,始终不弹出下载对话框(程序不报错)
- Hibernate insert 错误
- The method querySubCategory(int) is undefined for the type GoodsCatedao
- 谁推荐下,ssh 的经典参考书 或视频
- 求助:hibernate脏数据的问题,请高手解答
- 如何将数据库A的某些表中的内容复制到另外一个数据库B中去
- 怎样把number类型转换后存到Object类型中,谢谢
- 在家帮我看看这段代码哪错了?
- spring boot shiro 每次登陆都会报这个错,但不影响功能是什么原因?
- 关于Sturst 该从那个方面下手
- Struts2.0+Spring2.0+Hibernate3.1整合 出现奇怪问题不能国际化
妳可以debug一下看看
Socket mySocket = new Socket(URL, port);
这是修改后的代码:
public String MessageReceive(String sendMsg) {
String strReceive = null;
String strReceive1 = "";
Socket mysocket;
StringBuffer sb = new StringBuffer();
InputStreamReader in = null;
try {
mysocket = sk;
PrintWriter out = new PrintWriter(mysocket.getOutputStream(), false);
//out.write(sendMsg); //通过 out向服务器写入信息。
out.println(sendMsg);
out.flush();
in = new InputStreamReader(mysocket.getInputStream(), "gb2312");
BufferedReader br = new BufferedReader(in);
//strReceive = br.readLine();
DataInputStream is = new DataInputStream(mysocket.getInputStream());
int c = 0;
int i_count = 0;
int icount1 = 85; //错误反馈报文长度
int icount2 = 102; //正常反馈报文长度
while (((c = br.read()) != -1)) {
strReceive = strReceive + (char) c;
i_count = strReceive.getBytes().length;
strReceive1 = strReceive1 + (char) c;
if ((icount1 != 0 && i_count >= icount1)
|| (icount2 !=0 && i_count >= icount2)) {
break;
}
}
mysocket.shutdownOutput();
mysocket.close();
return StringHelper.NullToSpace(strReceive1);
} catch (SocketException e) {
e.printStackTrace();
return null;
} catch (UnknownHostException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}那个抛出异常的问题就解决了,但是我还是不明白这里的控制机制。请高人指点。