我觉得是包文长度的问题.java用byte数组, c/c++用char数组
这种模式经常用,没问题
这种模式经常用,没问题
解决方案 »
- 如何更改才能得到所要的输出结果?
- 在求个正则表达式……
- 怎样实现对话框中间的洞,能够看到对话框的后边?
- JAVA中关于构造函数重载问题!
- 如何写一个给 c 调用的java程序
- java字符串的两个疑问?在线等
- HELP,HELP,HELP!!!!!!!!!!!!!!!
- 用JAVA调用ARJ程序后怎么样在JAVA程序中执行ARJ的命令????
- 请问为什么使用PreparedStatement的setString方法会自动在varchar后面补空格?
- 如何用JTREE实现操作
- 将CheckBox作为单元格Editor的表格列如何修改其值?
- 用connection进行数据库连接更新数据时 ,不关闭connection对象为什么数据库不更新???
tabby(-_-! .. 内存泄漏) ,我用的是TCP,不知道啊!现在出现的问题是他给我发送过来的数据我收不到!
还有,有人建议我java服务器端接收数据的程序应该改为接收二进制的方式,而不是用readLine()的方式!
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader( new InputStreamReader( socket.getInputStream()));
String inputLine, outputLine;
out.println("<?xml version='1.0' encoding='ISO-8859-1'?><txnreq><syscode>0101</syscode><sysword>等待数据包</sysword></txnreq>");
out.flush();
while ((inputLine=in.readLine())!=null) {
outputLine = inputLine;
out.println(outputLine);
out.flush();
}
修改后的程序如下:
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader( new InputStreamReader( socket.getInputStream()));
String inputLine, outputLine;
out.println("<?xml version='1.0' encoding='ISO-8859-1'?><txnreq><syscode>0101</syscode><sysword>等待数据包</sysword></txnreq>");
out.flush();
boolean a = true;
while (a){
System.out.println(in.read());
}
这样的话,用in.read()就可以得到用VC开发的客户端发送过来的信息!
但是,用in.read()的话我们java服务器端还得对发送过来的二进制流进行重新组合!
有没有我们java服务器端用in.readLine()就可以读到VC开发的客户端发送过来的信息的方法?