資源簡介
socket聊天程序,在傳輸過程中實現DES加解密。可保證安全傳輸。

代碼片段和文件信息
package?shiyan;
import?java.awt.BorderLayout;
import?java.awt.Container;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.io.BufferedInputStream;
import?java.io.BufferedOutputStream;
import?java.io.BufferedReader;
import?java.io.DataInputStream;
import?java.io.DataOutputStream;
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?java.io.InputStream;
import?java.io.InputStreamReader;
import?java.io.objectInputStream;
import?java.io.objectOutputStream;
import?java.io.OutputStream;
import?java.io.PrintWriter;
import?java.net.*;
import?java.util.concurrent.*;
import?javax.swing.Box;
import?javax.swing.JButton;
import?javax.swing.JFileChooser;
import?javax.swing.Jframe;
import?javax.swing.JPanel;
import?javax.swing.JScrollPane;
import?javax.swing.JTextArea;
import?javax.swing.JTextField;
public?class?client?extends?Jframe??{
private?objectInputStream?m_input;
private?objectOutputStream?m_output;
private?JTextField?m_enter;
private?JTextArea?m_display;
private?int?m_clientNumber?=?0;
public?client()?throws?IOException?{
super(“聊天程序客戶端“);
Container?c?=?getContentPane();
m_enter?=?new?JTextField();
m_enter.setEnabled(false);
m_enter.addActionListener(new?ActionListener()?{
public?void?actionPerformed(ActionEvent?event)?{
try?{
String?s?=?event.getActionCommand();
DesEncrypt?des?=?new?DesEncrypt();?//?實例化一個對像
des.getKey(“aadd“);?//?生成密匙
String?strEnc?=?des.getEncString(s);//?加密字符串返回String的密文
m_output.writeobject(strEnc);
m_output.flush();
mb_displayAppend(“客戶端“?+?s);
m_enter.setText(““);
}?catch?(Exception?e)?{
System.err.println(“發生異常:“?+?e);
e.printStackTrace();
}
}
});
c.add(m_enter?BorderLayout.NORTH);
m_display?=?new?JTextArea();
c.add(new?JScrollPane(m_display)?BorderLayout.CENTER);
}
public?void?mb_displayAppend(String?s)?{
m_display.append(s?+?“\n“);
m_display.setCaretPosition(m_display.getText().length());
m_enter.requestFocusInWindow();
}
public?boolean?mb_isEndSession(String?m)?{
if?(m.equalsIgnoreCase(“q“))
return?(true);
if?(m.equalsIgnoreCase(“quit“))
return?(true);
if?(m.equalsIgnoreCase(“exit“))
return?(true);
if?(m.equalsIgnoreCase(“end“))
return?(true);
if?(m.equalsIgnoreCase(“結束“))
return?(true);
return?(false);
}
public?void?mb_run(String?host?int?port)?{
try?{
mb_displayAppend(“嘗試連接?“);
Socket?s?=?new?Socket(host?port);
String?m;
String?strDes;
String?senq;
m_output?=?new?objectOutputStream(s.getOutputStream());
m_input?=?new?objectInputStream(s.getInputStream());
m_enter.setEnabled(true);
m?=?(String)?m_input.readobject();
mb_displayAppend(m);
do?{
m?=?(String)?m_input.readobject();
DesEncrypt?des?=?new?DesEncrypt();?//?實例化
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3919??2010-06-18?08:23??DES加解密socket聊天程序代碼\client.java
?????文件???????3358??2010-06-18?11:06??DES加解密socket聊天程序代碼\DesEncrypt.java
?????文件???????4083??2010-06-18?08:24??DES加解密socket聊天程序代碼\server.java
?????目錄??????????0??2010-09-12?15:06??DES加解密socket聊天程序代碼
-----------?---------??----------?-----??----
????????????????11360????????????????????4
評論
共有 條評論