





{"id":1747,"date":"2011-02-24T22:11:47","date_gmt":"2011-02-25T02:11:47","guid":{"rendered":"http:\/\/www.killtest.hk\/?p=1747"},"modified":"2011-02-24T22:11:47","modified_gmt":"2011-02-25T02:11:47","slug":"wang","status":"publish","type":"post","link":"https:\/\/www.killtest.hk\/index.php\/unix\/wang\/","title":{"rendered":"\u7db2\u7d61\u7de8\u7a0b \u8cea\u6578\u5224\u5225\u793a\u4f8b"},"content":{"rendered":"<p>\u8a72\u793a\u4f8b\u5be6\u73fe\u7684\u529f\u80fd\u662f\u8cea\u6578\u5224\u65b7\uff0c\u7a0b\u5e8f\u5be6\u73fe\u7684\u529f\u80fd\u70ba\u5ba2\u6236\u7aef\u7a0b\u5e8f\u63a5\u6536\u7528\u6236\u8f38\u5165\u7684\u6578\u5b57\uff0c\u7136\u5f8c\u5c07\u7528\u6236\u8f38\u5165\u7684\u5167\u5bb9\u767c\u9001\u7d66\u670d\u52d9\u5668\u7aef\uff0c\u670d\u52d9\u5668\u7aef\u5224\u65b7\u5ba2\u6236\u7aef\u767c\u9001\u7684\u6578\u5b57\u662f\u5426\u662f\u8cea\u6578\uff0c\u4e26\u5c07\u5224\u65b7\u7684\u7d50\u679c\u53cd\u994b\u7d66\u5ba2\u6236\u7aef\uff0c\u5ba2\u6236\u7aef\u6839\u64da\u670d\u52d9\u5668\u7aef\u7684\u53cd\u994b\u986f\u793a\u5224\u65b7\u7d50\u679c\u3002<br \/>\n\u00a0\u00a0\u00a0 \u8cea\u6578\u7684\u898f\u5247\u662f\uff1a\u6700\u5c0f\u7684\u8cea\u6578\u662f2\uff0c\u53ea\u80fd\u88ab1\u548c\u81ea\u8eab\u6574\u9664\u7684\u81ea\u7136\u6578\u3002\u7576\u7528\u6236\u8f38\u5165\u5c0f\u65bc2\u7684\u6578\u5b57\uff0c\u4ee5\u53ca\u8f38\u5165\u7684\u5167\u5bb9\u4e0d\u662f\u81ea\u7136\u6578\u6642\uff0c\u90fd\u5c6c\u65bc\u975e\u6cd5\u8f38\u5165\u3002<br \/>\n\u00a0\u00a0\u00a0 \u7db2\u7d61\u7a0b\u5e8f\u7684\u529f\u80fd\u90fd\u5206\u70ba\u5ba2\u6236\u7aef\u7a0b\u5e8f\u548c\u670d\u52d9\u5668\u7aef\u7a0b\u5e8f\u5be6\u73fe\uff0c\u4e0b\u9762\u5148\u63cf\u8ff0\u58f9\u4e0b\u6bcf\u500b\u7a0b\u5e8f\u5206\u5225\u5be6\u73fe\u7684\u529f\u80fd\uff1a<br \/>\n\u00a0\u00a0\u00a0 1\u3001\u00a0 \u5ba2\u6236\u7aef\u7a0b\u5e8f\u529f\u80fd\uff1a<br \/>\n\u00a0\u00a0\u00a0 a\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u63a5\u6536\u7528\u6236\u63a7\u5236\u81fa\u8f38\u5165<br \/>\n\u00a0\u00a0\u00a0 b\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u5224\u65b7\u8f38\u5165\u5167\u5bb9\u662f\u5426\u5408\u6cd5<br \/>\n\u00a0\u00a0\u00a0 c\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u6309\u7167\u5354\u8b70\u683c\u5f0f\u751f\u6210\u767c\u9001\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 d\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u767c\u9001\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 e\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u63a5\u6536\u670d\u52d9\u5668\u7aef\u53cd\u994b<br \/>\n\u00a0\u00a0\u00a0 f\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u89e3\u6790\u670d\u52d9\u5668\u7aef\u53cd\u994b\u4fe1\u606f\uff0c\u4e26\u8f38\u51fa<br \/>\n\u00a0\u00a0\u00a0 2\u3001\u00a0 \u670d\u52d9\u5668\u7aef\u7a0b\u5e8f\u529f\u80fd\uff1a<br \/>\n\u00a0\u00a0\u00a0 a\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u63a5\u6536\u5ba2\u6236\u7aef\u767c\u9001\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 b\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u6309\u7167\u5354\u8b70\u683c\u5f0f\u89e3\u6790\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 c\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u5224\u65b7\u6578\u5b57\u662f\u5426\u662f\u8cea\u6578<br \/>\n\u00a0\u00a0\u00a0 d\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u6839\u64da\u5224\u65b7\u7d50\u679c\uff0c\u751f\u6210\u5354\u8b70\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 e\uff09\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u5c07\u6578\u64da\u53cd\u994b\u7d66\u5ba2\u6236\u7aef<br \/>\n\u00a0\u00a0\u00a0 \u5206\u89e3\u597d\u4e86\u7db2\u7d61\u7a0b\u5e8f\u7684\u529f\u80fd\u4ee5\u5f8c\uff0c\u5c31\u53ef\u4ee5\u8a2d\u8a08\u7db2\u7d61\u5354\u8b70\u683c\u5f0f\u4e86\uff0c\u5982\u679c\u8a72\u7a0b\u5e8f\u7684\u529f\u80fd\u6bd4\u8f03\u7c21\u55ae\uff0c\u6240\u4ee5\u8a2d\u8a08\u51fa\u7684\u5354\u8b70\u683c\u5f0f\u4e5f\u4e0d\u5fa9\u96dc\u3002<br \/>\n\u00a0\u00a0\u00a0 \u5ba2\u6236\u7aef\u767c\u9001\u5354\u8b70\u683c\u5f0f\uff1a<br \/>\n\u00a0\u00a0\u00a0 \u5c07\u7528\u6236\u8f38\u5165\u7684\u6578\u5b57\u8f49\u63db\u70ba\u5b57\u7b26\u4e32\uff0c\u518d\u5c07\u5b57\u7b26\u4e32\u8f49\u63db\u70babyte\u6578\u7d44\u5373\u53ef\u3002<br \/>\n\u00a0\u00a0\u00a0 \u4f8b\u5982\u7528\u6236\u8f38\u516516\uff0c\u5247\u8f49\u63db\u70ba\u5b57\u7b26\u4e32\u201c16\u201d\uff0c\u4f7f\u7528getBytes\u8f49\u63db\u70babyte\u6578\u7d44\u3002<br \/>\n\u00a0\u00a0\u00a0 \u5ba2\u6236\u7aef\u767c\u9001\u201cquit\u201d\u5b57\u7b26\u4e32\u4ee3\u8868\u7d50\u675f\u9023\u63a5<br \/>\n\u00a0\u00a0\u00a0 \u670d\u52d9\u5668\u7aef\u767c\u9001\u5354\u8b70\u683c\u5f0f\uff1a<br \/>\n\u00a0\u00a0\u00a0 \u53cd\u994b\u6578\u64da\u9577\u5ea6\u70ba1\u500b\u5b57\u7bc0\u3002\u6578\u5b570\u4ee3\u8868\u662f\u8cea\u6578\uff0c1\u4ee3\u8868\u4e0d\u662f\u8cea\u6578\uff0c2\u4ee3\u8868\u5354\u8b70\u683c\u5f0f\u932f\u8aa4\u3002<br \/>\n\u00a0\u00a0\u00a0 \u4f8b\u5982\u5ba2\u6236\u7aef\u767c\u9001\u6578\u5b5712\uff0c\u5247\u53cd\u994b1\uff0c\u767c\u900113\u5247\u53cd\u994b0\uff0c\u767c\u90010\u5247\u53cd\u994b2\u3002<br \/>\n\u00a0\u00a0\u00a0 \u529f\u80fd\u8a2d\u8a08\u5b8c\u6210\u4ee5\u5f8c\uff0c\u5c31\u53ef\u4ee5\u5206\u5225\u9032\u884c\u5ba2\u6236\u7aef\u548c\u670d\u52d9\u5668\u7aef\u7a0b\u5e8f\u7684\u7de8\u5beb\u4e86\uff0c\u5728\u7de8\u5beb\u5b8c\u6210\u4ee5\u5f8c\u806f\u5408\u8d77\u4f86\u9032\u884c\u8abf\u8a66\u5373\u53ef\u3002<br \/>\n\u00a0\u00a0\u00a0 \u4e0b\u9762\u5206\u5225\u4ee5TCP\u65b9\u5f0f\u548cUDP\u65b9\u5f0f\u5be6\u73fe\u8a72\u7a0b\u5e8f\uff0c\u8a3b\u610f\u5176\u5be6\u73fe\u4e0a\u7684\u5dee\u7570\u3002\u4e0d\u7ba1\u4f7f\u7528\u54ea\u7a2e\u65b9\u5f0f\u5be6\u73fe\uff0c\u5ba2\u6236\u7aef\u90fd\u53ef\u4ee5\u591a\u6b21\u8f38\u5165\u6578\u64da\u9032\u884c\u5224\u65b7\u3002\u5c0d\u65bcUDP\u65b9\u5f0f\u4f86\u8aaa\uff0c\u4e0d\u9700\u8981\u5411\u670d\u52d9\u5668\u7aef\u767c\u9001quit\u5b57\u7b26\u4e32\u3002<br \/>\n\u00a0\u00a0\u00a0 \u4ee5TCP\u65b9\u5f0f\u5be6\u73fe\u7684\u5ba2\u6236\u7aef\u7a0b\u5e8f\u4ee3\u78bc\u5982\u4e0b\uff1a<br \/>\n\u00a0\u00a0\u00a0 package example1;<br \/>\n\u00a0\u00a0\u00a0 import java.io.*;<br \/>\n\u00a0\u00a0\u00a0 import java.net.*;<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u4ee5TCP\u65b9\u5f0f\u5be6\u73fe\u7684\u8cea\u6578\u5224\u65b7\u5ba2\u6236\u7aef\u7a0b\u5e8f<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 public class TCPPrimeClient {<br \/>\n\u00a0\u00a0\u00a0 static BufferedReader br;<br \/>\n\u00a0\u00a0\u00a0 static Socket socket;<br \/>\n\u00a0\u00a0\u00a0 static InputStream is;<br \/>\n\u00a0\u00a0\u00a0 static OutputStream os;<br \/>\n\u00a0\u00a0\u00a0 \/**\u670d\u52d9\u5668IP*\/<br \/>\n\u00a0\u00a0\u00a0 final static String HOST = &#8220;127.0.0.1&#8221;;<br \/>\n\u00a0\u00a0\u00a0 \/**\u670d\u52d9\u5668\u7aef\u7aef\u53e3*\/<br \/>\n\u00a0\u00a0\u00a0 final static int PORT = 10005;<br \/>\n\u00a0\u00a0\u00a0 public static void main\uff08String[] args\uff09 {<br \/>\n\u00a0\u00a0\u00a0 init\uff08\uff09\uff1b \/\/\u521d\u59cb\u5316<br \/>\n\u00a0\u00a0\u00a0 while\uff08true\uff09{<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u8acb\u8f38\u5165\u6578\u5b57\uff1a&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 String input = readInput\uff08\uff09\uff1b \/\/\u8b80\u53d6\u8f38\u5165<br \/>\n\u00a0\u00a0\u00a0 if\uff08isQuit\uff08input\uff09\uff09{ \/\/\u5224\u8b80\u662f\u5426\u7d50\u675f<br \/>\n\u00a0\u00a0\u00a0 byte[] b = &#8220;quit&#8221;.getBytes\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 send\uff08b\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 break; \/\/\u7d50\u675f\u7a0b\u5e8f<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 if\uff08checkInput\uff08input\uff09\uff09{ \/\/\u6821\u9a57\u5408\u6cd5<br \/>\n\u00a0\u00a0\u00a0 \/\/\u767c\u9001\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 send\uff08input.getBytes\uff08\uff09\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 \/\/\u63a5\u6536\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 byte[] data = receive\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 \/\/\u89e3\u6790\u53cd\u994b\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 parse\uff08data\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 }else{<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u8f38\u5165\u4e0d\u5408\u6cd5\uff0c\u8acb\u91cd\u65b0\u8f38\u5165\uff01&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 close\uff08\uff09\uff1b\u00a0 \/\/\u95dc\u9589\u6d41\u548c\u9023\u63a5<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u521d\u59cb\u5316<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static void init\uff08\uff09{<br \/>\n\u00a0\u00a0\u00a0 try {<br \/>\n\u00a0\u00a0\u00a0 br = new BufferedReader\uff08<br \/>\n\u00a0\u00a0\u00a0 new InputStreamReader\uff08System.in\uff09\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 socket = new Socket\uff08HOST,PORT\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 is = socket.getInputStream\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 os = socket.getOutputStream\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 } catch \uff08Exception e\uff09 {}<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u8b80\u53d6\u5ba2\u6236\u7aef\u8f38\u5165<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static String readInput\uff08\uff09{<br \/>\n\u00a0\u00a0\u00a0 try {<br \/>\n\u00a0\u00a0\u00a0 return br.readLine\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 } catch \uff08Exception e\uff09 {<br \/>\n\u00a0\u00a0\u00a0 return null;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u5224\u65b7\u662f\u5426\u8f38\u5165quit<br \/>\n\u00a0\u00a0\u00a0 * @param input \u8f38\u5165\u5167\u5bb9<br \/>\n\u00a0\u00a0\u00a0 * @return true\u4ee3\u8868\u7d50\u675f\uff0cfalse\u4ee3\u8868\u4e0d\u7d50\u675f<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static boolean isQuit\uff08String input\uff09{<br \/>\n\u00a0\u00a0\u00a0 if\uff08input == null\uff09{<br \/>\n\u00a0\u00a0\u00a0 return false;<br \/>\n\u00a0\u00a0\u00a0 }else{<br \/>\n\u00a0\u00a0\u00a0 if\uff08&#8221;quit&#8221;.equalsIgnoreCase\uff08input\uff09\uff09{<br \/>\n\u00a0\u00a0\u00a0 return true;<br \/>\n\u00a0\u00a0\u00a0 }else{<br \/>\n\u00a0\u00a0\u00a0 return false;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u6821\u9a57\u8f38\u5165<br \/>\n\u00a0\u00a0\u00a0 * @param input \u7528\u6236\u8f38\u5165\u5167\u5bb9<br \/>\n\u00a0\u00a0\u00a0 * @return true\u4ee3\u8868\u8f38\u5165\u7b26\u5408\u8981\u6c42\uff0cfalse\u4ee3\u8868\u4e0d\u7b26\u5408<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static boolean checkInput\uff08String input\uff09{<br \/>\n\u00a0\u00a0\u00a0 if\uff08input == null\uff09{<br \/>\n\u00a0\u00a0\u00a0 return false;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 try{<br \/>\n\u00a0\u00a0\u00a0 int n = Integer.parseInt\uff08input\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 if\uff08n &gt;= 2\uff09{<br \/>\n\u00a0\u00a0\u00a0 return true;<br \/>\n\u00a0\u00a0\u00a0 }else{<br \/>\n\u00a0\u00a0\u00a0 return false;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }catch\uff08Exception e\uff09{<br \/>\n\u00a0\u00a0\u00a0 return false;\u00a0 \/\/\u8f38\u5165\u4e0d\u662f\u6574\u6578<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u5411\u670d\u52d9\u5668\u7aef\u767c\u9001\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 * @param data \u6578\u64da\u5167\u5bb9<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static void send\uff08byte[] data\uff09{<br \/>\n\u00a0\u00a0\u00a0 try{<br \/>\n\u00a0\u00a0\u00a0 os.write\uff08data\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 }catch\uff08Exception e\uff09{}<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u63a5\u6536\u670d\u52d9\u5668\u7aef\u53cd\u994b<br \/>\n\u00a0\u00a0\u00a0 * @return \u53cd\u994b\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static byte[] receive\uff08\uff09{<br \/>\n\u00a0\u00a0\u00a0 byte[] b = new byte[1024];<br \/>\n\u00a0\u00a0\u00a0 try {<br \/>\n\u00a0\u00a0\u00a0 int n = is.read\uff08b\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 byte[] data = new byte[n];<br \/>\n\u00a0\u00a0\u00a0 \/\/\u5fa9\u5236\u6709\u6548\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 System.arraycopy\uff08b, 0, data, 0, n\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 return data;<br \/>\n\u00a0\u00a0\u00a0 } catch \uff08Exception e\uff09{}<br \/>\n\u00a0\u00a0\u00a0 return null;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u89e3\u6790\u5354\u8b70\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 * @param data \u5354\u8b70\u6578\u64da<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static void parse\uff08byte[] data\uff09{<br \/>\n\u00a0\u00a0\u00a0 if\uff08data == null\uff09{<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u670d\u52d9\u5668\u7aef\u53cd\u994b\u6578\u64da\u4e0d\u6b63\u78ba\uff01&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 return;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 byte value = data[0]; \/\/\u53d6\u7b2c\u58f9\u500bbyte<br \/>\n\u00a0\u00a0\u00a0 \/\/\u6309\u7167\u5354\u8b70\u683c\u5f0f\u89e3\u6790<br \/>\n\u00a0\u00a0\u00a0 switch\uff08value\uff09{<br \/>\n\u00a0\u00a0\u00a0 case 0:<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u8cea\u6578&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 break;<br \/>\n\u00a0\u00a0\u00a0 case 1:<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u4e0d\u662f\u8cea\u6578&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 break;<br \/>\n\u00a0\u00a0\u00a0 case 2:<br \/>\n\u00a0\u00a0\u00a0 System.out.println\uff08&#8221;\u5354\u8b70\u683c\u5f0f\u932f\u8aa4&#8221;\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 break;<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 \/**<br \/>\n\u00a0\u00a0\u00a0 * \u95dc\u9589\u6d41\u548c\u9023\u63a5<br \/>\n\u00a0\u00a0\u00a0 *\/<br \/>\n\u00a0\u00a0\u00a0 private static void close\uff08\uff09{<br \/>\n\u00a0\u00a0\u00a0 try{<br \/>\n\u00a0\u00a0\u00a0 br.close\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 is.close\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 os.close\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 socket.close\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 }catch\uff08Exception e\uff09{<br \/>\n\u00a0\u00a0\u00a0 e.printStackTrace\uff08\uff09\uff1b<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<br \/>\n\u00a0\u00a0\u00a0 }<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8a72\u793a\u4f8b\u5be6\u73fe\u7684\u529f\u80fd\u662f\u8cea\u6578\u5224\u65b7\uff0c\u7a0b\u5e8f\u5be6\u73fe\u7684\u529f\u80fd\u70ba\u5ba2\u6236\u7aef\u7a0b\u5e8f\u63a5\u6536\u7528\u6236\u8f38\u5165\u7684\u6578\u5b57\uff0c\u7136\u5f8c\u5c07\u7528\u6236\u8f38\u5165\u7684\u5167\u5bb9\u767c\u9001\u7d66\u670d\u52d9\u5668\u7aef\uff0c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[531],"tags":[562,725,726],"class_list":["post-1747","post","type-post","status-publish","format-standard","hentry","category-unix","tag-562","tag-725","tag-726"],"_links":{"self":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts\/1747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/comments?post=1747"}],"version-history":[{"count":0,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/posts\/1747\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/media?parent=1747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/categories?post=1747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.killtest.hk\/index.php\/wp-json\/wp\/v2\/tags?post=1747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}