socket中文亂碼的解決辦法就是對緩沖區(qū)的讀取和寫入使用“new OutputStreamWriter(client.getOutputStream(),"UTF-8"…”代碼即可。
本文操作環(huán)境:windows7系統(tǒng),DELL G3電腦
socket中文亂碼怎么辦?
Socket通信中文亂碼解決
對緩沖區(qū)的讀取和寫入使用這兩句代碼:
PrintWriter out=new PrintWriter(new OutputStreamWriter(client.getOutputStream(),"UTF-8"),true); BufferedReader msg=new BufferedReader(new InputStreamReader(client.getInputStream(),"UTF-8"));
相關介紹:
套接字(Socket)是通信的基石,是支持TCP/IP協(xié)議的路通信的基本操作單元??梢詫⑻捉幼挚醋鞑煌鳈C間的進程進行雙間通信的端點,它構成了單個主機內及整個網絡間的編程界面。套接字存在于通信域中,通信域是為了處理一般的線程通過套接字通信而引進的一種抽象概念。套接字通常和同一個域中的套接字交換數據(數據交換也可能穿越域的界限,但這時一定要執(zhí)行某種解釋程序),各種進程使用這個相同的域互相之間用Internet協(xié)議簇來進行通信 。
Socket(套接字)可以看成是兩個網絡應用程序進行通信時,各自通信連接中的端點,這是一個邏輯上的概念。它是網絡環(huán)境中進程間通信的API(應用程序編程接口),也是可以被命名和尋址的通信端點,使用中的每一個套接字都有其類型和一個與之相連進程。通信時其中一個網絡應用程序將要傳輸的一段信息寫入它所在主機的 Socket中,該 Socket通過與網絡接口卡(NIC)相連的傳輸介質將這段信息送到另外一臺主機的 Socket中,使對方能夠接收到這段信息。 Socket是由IP地址和端口結合的,提供向應用層進程傳送數據包的機制。