MD5加密(Java实现图形化界面).docx_第1页
MD5加密(Java实现图形化界面).docx_第2页
MD5加密(Java实现图形化界面).docx_第3页
MD5加密(Java实现图形化界面).docx_第4页
MD5加密(Java实现图形化界面).docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MD5加密(Java实现图形化界面)效果图如下:有三个java类来完成分别为MD5View(视图)、MD5Service(MD5加密)、MD5Main(主方法类)MD5View(视图)package com.md5.view;import java.awt.Container;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.Image;import java.awt.Toolkit;import java.awt.datatransfer.Clipboard;import java.awt.datatransfer.StringSelection;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Locale;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;import com.md5.service.MD5Service;/* * MD5加密图形界面 * * author xlfdzhf */public class MD5View extends JFrame implements Runnableprivate static final long serialVersionUID = 1L;private Container container;private JTextField md5Encrypt;private JLabel time;private JTextField md5EncryptedUp32;private JTextField md5EncryptedLow32;private JTextField md5EncryptedUp16;private JTextField md5EncryptedLow16;private MD5Service md5Service;private Clipboard clip=Toolkit.getDefaultToolkit().getSystemClipboard();public MD5View()JFrame md5=new JFrame(MD5加密);Image md5image = Toolkit.getDefaultToolkit().getImage(image/md5.jpg);md5.setIconImage(md5image);md5.setVisible(true);md5.setLocation(400, 300);md5.setSize(600, 400);md5.setResizable(false);md5.setLayout(new GridLayout(8,1,10,10);md5.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);container=md5.getContentPane();/标题JPanel md5Panel=new JPanel();md5Panel.setLayout(new FlowLayout(FlowLayout.RIGHT,20,1);JButton clean=new JButton(清空所有内容);JButton trim=new JButton(去掉明文首尾空格);time=new JLabel();clean.addActionListener(new ButtonActionListener();trim.addActionListener(new ButtonActionListener();md5Panel.add(clean);md5Panel.add(trim);md5Panel.add(time);/明文JPanel inputPanel=new JPanel();inputPanel.setLayout(new FlowLayout();JLabel inputLabel=new JLabel(您请输入明文:);md5Encrypt=new JTextField(30);JButton encrypt=new JButton(使用MD5加密明文);encrypt.addActionListener(new ButtonActionListener();inputPanel.add(inputLabel);inputPanel.add(md5Encrypt);inputPanel.add(encrypt);/32位MD5大写JPanel md5Up32Panel=new JPanel();md5Up32Panel.setLayout(new FlowLayout();JLabel md5Up32Label=new JLabel(32位MD5大写:);md5EncryptedUp32=new JTextField(30);md5EncryptedUp32.setEditable(false);JButton copyUp32=new JButton(复制32位MD5大写);copyUp32.addActionListener(new ButtonActionListener();md5Up32Panel.add(md5Up32Label);md5Up32Panel.add(md5EncryptedUp32);md5Up32Panel.add(copyUp32);/32位MD5小写JPanel md5Low32Panel=new JPanel();md5Low32Panel.setLayout(new FlowLayout();JLabel md5Low32Label=new JLabel(32位MD5小写:);md5EncryptedLow32=new JTextField(30);md5EncryptedLow32.setEditable(false);JButton copyLow32=new JButton(复制32位MD5小写);copyLow32.addActionListener(new ButtonActionListener();md5Low32Panel.add(md5Low32Label);md5Low32Panel.add(md5EncryptedLow32);md5Low32Panel.add(copyLow32);/16位MD5大写JPanel md5Up16Panel=new JPanel();md5Up16Panel.setLayout(new FlowLayout();JLabel md5Up16Label=new JLabel(16位MD5大写:);md5EncryptedUp16=new JTextField(30);md5EncryptedUp16.setEditable(false);JButton copyUp16=new JButton(复制16位MD5大写);copyUp16.addActionListener(new ButtonActionListener();md5Up16Panel.add(md5Up16Label);md5Up16Panel.add(md5EncryptedUp16);md5Up16Panel.add(copyUp16);/16位MD5小写JPanel md5Low16Panel=new JPanel();md5Low16Panel.setLayout(new FlowLayout();JLabel md5Low16Label=new JLabel(16位MD5小写:);md5EncryptedLow16=new JTextField(30);md5EncryptedLow16.setEditable(false);JButton copyLow16=new JButton(复制16位MD5小写);copyLow16.addActionListener(new ButtonActionListener();md5Low16Panel.add(md5Low16Label);md5Low16Panel.add(md5EncryptedLow16);md5Low16Panel.add(copyLow16);/版本信息JPanel md5AboutPanel=new JPanel();md5AboutPanel.setLayout(new FlowLayout(FlowLayout.CENTER,20,1);JLabel md5VersionLabel=new JLabel(Version:2013.01.17);JLabel md5AuthorLabel=new JLabel(Author:xlfdzhf);md5AboutPanel.add(md5VersionLabel);md5AboutPanel.add(md5AuthorLabel);container.add(md5Panel);container.add(inputPanel);container.add(md5Up32Panel);container.add(md5Low32Panel);container.add(md5Up16Panel);container.add(md5Low16Panel);container.add(md5AboutPanel);public class ButtonActionListener implements ActionListenerOverridepublic void actionPerformed(ActionEvent e) JButton button=(JButton)e.getSource();if(button.getActionCommand().equals(清空所有内容)md5Encrypt.setText();md5EncryptedUp32.setText();md5EncryptedLow32.setText();md5EncryptedUp16.setText();md5EncryptedLow16.setText();else if(button.getActionCommand().equals(去掉明文首尾空格)md5Encrypt.setText(md5Encrypt.getText().trim();else if(button.getActionCommand().equals(使用MD5加密明文)md5Service=new MD5Service(md5Encrypt.getText();md5EncryptedUp32.setText(md5Service.getMd5EncryptedUp32();md5EncryptedLow32.setText(md5Service.getMd5EncryptedLow32();md5EncryptedUp16.setText(md5Service.getMd5EncryptedUp16();md5EncryptedLow16.setText(md5Service.getMd5EncryptedLow16();else if(button.getActionCommand().equals(复制32位MD5大写)clip.setContents(new StringSelection(md5EncryptedUp32.getText(), null);JOptionPane.showMessageDialog(container,已复制到剪贴板!, 系统信息, JOptionPane.INFORMATION_MESSAGE);else if(button.getActionCommand().equals(复制32位MD5小写)clip.setContents(new StringSelection(md5EncryptedLow32.getText(), null);JOptionPane.showMessageDialog(container,已复制到剪贴板!, 系统信息, JOptionPane.INFORMATION_MESSAGE);else if(button.getActionCommand().equals(复制16位MD5大写)clip.setContents(new StringSelection(md5EncryptedUp16.getText(), null);JOptionPane.showMessageDialog(container,已复制到剪贴板!, 系统信息, JOptionPane.INFORMATION_MESSAGE);else if(button.getActionCommand().equals(复制16位MD5小写)clip.setContents(new StringSelection(md5EncryptedLow16.getText(), null);JOptionPane.showMessageDialog(container,已复制到剪贴板!, 系统信息, JOptionPane.INFORMATION_MESSAGE);Overridepublic void run() while(true)Date date=new Date();SimpleDateFormat sfm=new SimpleDateFormat(yyyy-MM-dd a hh:mm:ss,Locale.ENGLISH);String dateTime= +sfm.format(date).toLowerCase();time.setText(dateTime);try Thread.sleep(1000); catch (InterruptedException e) MD5Service(MD5加密)package com.md5.service;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;/* * MD5加密算法 * * author xlfdzhf */public class MD5Service private String md5EncryptedUp32;private String md5EncryptedLow32;private String md5EncryptedUp16;private String md5EncryptedLow16;public MD5Service(String str)try MessageDigest md = MessageDigest.getInstance(MD5);md.update(str.getBytes();byte b = md.digest();int i;StringBuffer buf = new StringBuffer();for(int offset = 0; offset b.length; offset+)i = boffset;if(i0)i+= 256;if(i16)buf.append(0);buf.append(Integer.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论