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"));
相關(guān)介紹:
套接字(Socket)是通信的基石,是支持TCP/IP協(xié)議的路通信的基本操作單元。可以將套接字看作不同主機間的進程進行雙間通信的端點,它構(gòu)成了單個主機內(nèi)及整個網(wǎng)絡(luò)間的編程界面。套接字存在于通信域中,通信域是為了處理一般的線程通過套接字通信而引進的一種抽象概念。套接字通常和同一個域中的套接字交換數(shù)據(jù)(數(shù)據(jù)交換也可能穿越域的界限,但這時一定要執(zhí)行某種解釋程序),各種進程使用這個相同的域互相之間用Internet協(xié)議簇來進行通信 。
Socket(套接字)可以看成是兩個網(wǎng)絡(luò)應(yīng)用程序進行通信時,各自通信連接中的端點,這是一個邏輯上的概念。它是網(wǎng)絡(luò)環(huán)境中進程間通信的API(應(yīng)用程序編程接口),也是可以被命名和尋址的通信端點,使用中的每一個套接字都有其類型和一個與之相連進程。通信時其中一個網(wǎng)絡(luò)應(yīng)用程序?qū)⒁獋鬏數(shù)囊欢涡畔懭胨谥鳈C的 Socket中,該 Socket通過與網(wǎng)絡(luò)接口卡(NIC)相連的傳輸介質(zhì)將這段信息送到另外一臺主機的 Socket中,使對方能夠接收到這段信息。 Socket是由IP地址和端口結(jié)合的,提供向應(yīng)用層進程傳送數(shù)據(jù)包的機制。