0
我試圖在Java上模擬服務器 - 客戶端套接字連接。我有該代碼:客戶端套接字接受的數據與服務器套接字不同
private static Socket clientSocket;
private static PrintWriter pw;
private static Socket serverSocket;
private static final int PORT_NUMBER = 1146;
public static void init() throws IOException {
ServerSocket sSocket = new ServerSocket(PORT_NUMBER);
clientSocket = new Socket("localhost", PORT_NUMBER);
serverSocket = sSocket.accept();
OutputStream os = serverSocket.getOutputStream();
pw = new PrintWriter(os, true);
}
private void writePackage(int[] dataPackage) {
for (int packageByte : dataPackage) {
pw.write(packageByte);
}
pw.flush();
try {
InputStream is = clientSocket.getInputStream();
} catch (IOException e) {
e.printStackTrace();
}
}
我的數據包有十六進制值。它是一個127長度的數組。當我檢查客戶端輸入流時,我發現只有前26個元素是我編寫服務器輸出流的元素。其他則不同。即第26個元素是0xC1
,它是十進制的193
,但客戶端輸入流接受的是十進制的196
。
我想念什麼?
你是對的!你知道導致差異的原因嗎? – kamaci