A
alt_wf
Unregistered / Unconfirmed
GUEST, unregistred user!
下面是一段简化的JAVA(服务端程序)代码,我准备用DELPHI编写一个客户端程序,但是
当中遇到了一些问题。1、起初用INDY控件集的TidTcpClient,但是用
了后发现它没有自动响应服务端(不能自动读取服务端发来的信息)事件。2、由于服务端
程序每次接受256个字符,所以客户端采用流的方式发送定长的字符串,但是服务端接受到
的却总是乱码,如果发送字符串(Write方法)服务端接受程序却会吧多个字符串接受在一
起显示,请各位高手赐教!!!
JAVA服务端部分代码
Socket sSocket = null;
InputStream Is = null;
OutputStream Os = null;
byte[] bIn = new byte[256];
byte[] bOut = new byte[256];
Is = sSocket.getInputStream();
Os = sSocket.getOutputStream();
int iNumBytes = Is.read(bIn, 0, 256);
str = new String(bIn);
if (str.trim().equals("login")) {
//要求登录
Is.read(bIn, 0, 256); //等待读入用户名
String strUser_Name = new String(bIn);
System.out.println(strUser_Name.trim());
Is.read(bIn, 0, 256); //等待读入用户口令
String strUser_Password = new String(bIn);
System.out.println(strUser_Password.trim());
System.out.println('进入了登陆系统');
}
当中遇到了一些问题。1、起初用INDY控件集的TidTcpClient,但是用
了后发现它没有自动响应服务端(不能自动读取服务端发来的信息)事件。2、由于服务端
程序每次接受256个字符,所以客户端采用流的方式发送定长的字符串,但是服务端接受到
的却总是乱码,如果发送字符串(Write方法)服务端接受程序却会吧多个字符串接受在一
起显示,请各位高手赐教!!!
JAVA服务端部分代码
Socket sSocket = null;
InputStream Is = null;
OutputStream Os = null;
byte[] bIn = new byte[256];
byte[] bOut = new byte[256];
Is = sSocket.getInputStream();
Os = sSocket.getOutputStream();
int iNumBytes = Is.read(bIn, 0, 256);
str = new String(bIn);
if (str.trim().equals("login")) {
//要求登录
Is.read(bIn, 0, 256); //等待读入用户名
String strUser_Name = new String(bIn);
System.out.println(strUser_Name.trim());
Is.read(bIn, 0, 256); //等待读入用户口令
String strUser_Password = new String(bIn);
System.out.println(strUser_Password.trim());
System.out.println('进入了登陆系统');
}