資源簡介
防止Socket傳遞漢字亂碼,防止Socket傳遞漢字亂碼

代碼片段和文件信息
package?com.zzk;
import?java.awt.*;
import?java.awt.BorderLayout;
import?java.awt.event.*;
import?java.io.*;
import?java.net.*;
import?javax.swing.*;
public?class?ClientSocketframe?extends?Jframe?{?//?創建類繼承Jframe類
????private?JLabel?label;
????private?JPanel?panel;
????private?OutputStreamWriter?out;?//?創建流對象
????private?PrintWriter?writer;?//?聲明PrintWriter類對象
????private?BufferedReader?reader;?//?聲明BufferedReader對象
????private?Socket?socket;?//?聲明Socket對象
????private?JTextArea?ta_info?=?new?JTextArea();?//?創建JtextArea對象
????private?JTextField?tf_send?=?new?JTextField();?//?創建JtextField對象
????
????public?ClientSocketframe()?{?//?構造方法
????????super();?//?調用父類的構造方法
????????settitle(“防止傳遞漢字亂碼客戶端“);
????????setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
????????setBounds(100?100?361?257);
????????final?JScrollPane?scrollPane?=?new?JScrollPane();
????????getContentPane().add(scrollPane?BorderLayout.CENTER);
????????scrollPane.setViewportView(ta_info);
????????getContentPane().add(getPanel()?BorderLayout.SOUTH);
????}
????
????private?void?connect()?{?//?連接套接字方法
????????ta_info.append(“嘗試連接......\n“);?//?文本域中信息信息
????????try?{?//?捕捉異常
????????????socket?=?new?Socket(“192.168.1.193“?1978);?//?實例化Socket對象
????????????while?(true)?{
????????????????out?=?new?OutputStreamWriter(socket.getOutputStream()?“UTF-8“);
????????????????writer?=?new?PrintWriter(out?true);
????????????????reader?=?new?BufferedReader(new?InputStreamReader(socket
????????????????????????.getInputStream()?“UTF-8“));?//?實例化BufferedReader對象
????????????????ta_info.append(“完成連接。\n“);?//?文本域中提示信息
????????????????getClientInfo();
????????????}
????????}?catch?(Exception?e)?{
????????????e.printStackTrace();?//?輸出異常信息
????????}
????}
????
????public?static?void?main(String[]?args)?{?//?主方法
????????ClientSocketframe?clien?=?new?ClientSocketframe();?//?創建本例對象
????????clien.setVisible(true);?//?將窗體顯示
????????clien.connect();?//?調用連接方法
????}
????
????private?void?getClientInfo()?{
????????try?{
????????????while?(true)?{?//?如果套接字是連接狀態
????????????????if?(reader?!=?null)?{
????????????????????String?line?=?reader.readLine();
????????????????????if?(line?!=?null)
????????????????????????ta_info.append(“接收到服務器發送的信息:“?+?line?+?“\n“);?//?獲得客戶端信息
????????????????}
????????????}
????????}?catch?(Exception?e)?{
????????????e.printStackTrace();
????????}?finally?{
????????????try?{
????????????????if?(reader?!=?null)?{
????????????????????
????????????????????reader.close();//?關閉流
????????????????????
????????????????}
????????????????if?(socket?!=?null)?{
????????????????????socket.close();?//?關閉套接字
????????????????}
????????????}?catch?(IOException?e)?{
????????????????e.printStackTrace();
????????????}
????????}
????}
????
????/**
?????*?@return
?????*/
????protected?JPanel?getPanel()?{
????????if?(panel?==?null)?{
????????????panel?=?new?JPanel();
????????????panel.add(getLabel());
????????????tf_send.s
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2010-09-14?13:15??314\.classpath
?????文件????????379??2011-01-04?14:15??314\.project
?????文件????????629??2010-09-14?13:15??314\.settings\org.eclipse.jdt.core.prefs
?????文件???????1410??2011-01-28?13:36??314\bin\com\zzk\ClientSocketfr
?????文件???????4401??2011-01-28?13:36??314\bin\com\zzk\ClientSocketfr
?????文件???????1361??2011-01-28?13:36??314\bin\com\zzk\ServerSocketfr
?????文件???????4258??2011-01-28?13:36??314\bin\com\zzk\ServerSocketfr
?????文件???????4031??2011-01-28?10:23??314\src\com\zzk\ClientSocketfr
?????文件???????3854??2010-09-14?13:42??314\src\com\zzk\ServerSocketfr
?????目錄??????????0??2011-01-28?13:36??314\bin\com\zzk
?????目錄??????????0??2011-01-25?14:12??314\src\com\zzk
?????目錄??????????0??2011-01-28?13:36??314\bin\com
?????目錄??????????0??2011-01-25?14:12??314\src\com
?????目錄??????????0??2011-01-25?14:12??314\.settings
?????目錄??????????0??2011-01-28?13:36??314\bin
?????目錄??????????0??2011-01-25?14:12??314\src
?????目錄??????????0??2011-01-25?14:12??314
-----------?---------??----------?-----??----
????????????????20624????????????????????17
評論
共有 條評論