- 论坛徽章:
- 0
|
我写了一个小C/S程序,代码如下:
/**
* 客户端
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* @author Jackie
*
*/
public class SocketClient {
Socket client = null;
BufferedReader bf = null;
BufferedReader readbf = null;
PrintWriter pw = null;
/**
*
*/
public SocketClient() {
try {
client = new Socket(InetAddress.getLocalHost(),8080);
bf = new BufferedReader(new InputStreamReader(client.getInputStream()));
pw = new PrintWriter(client.getOutputStream(),true);
readbf = new BufferedReader(new InputStreamReader(System.in));
//pw.println(readbf.readLine());2281705833
pw.write(741824);
//System.out.println(bf.readLine());
pw.close();
bf.close();
readbf.close();
client.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
new SocketClient();
}
/**
* 服务器端
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
* @author Jackie
*
*/
public class SocketServer {
ServerSocket server = null;
Socket dataS = null;
BufferedReader bf = null;
PrintWriter pw = null;
int readint;
/**
*
*/
public SocketServer() {
try {
server = new ServerSocket(8080);
while(true){
this.dataS = this.server.accept();
bf = new BufferedReader(new InputStreamReader(dataS.getInputStream()));
pw = new PrintWriter(this.dataS.getOutputStream(),true);
String line = "bf.readLine()";
System.out.println("you input is :" + line +" "+bf.read());
this.pw.close();
this.bf.close();
this.dataS.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
new SocketServer();
}
}
我在客户端给服务器端发送的int是741824,可是得到的结果却是:
you input is :bf.readLine() 20928
这是为什么呢,查看2进制形式,发现在前面会多几个bit,总是这样的,有谁知道为什么吗? |
|