java 生成 文件 md5_JAVA版文件MD5生成器
/** Main.java
*
* Created on 2007年11月8日, 上午9:15*/packagetest1;importjava.awt.datatransfer.DataFlavor;importjava.awt.datatransfer.Transferable;importjava.awt.datatransfer.UnsupportedFlavorException;importjava.awt.dnd.DnDConstants;importjava.awt.dnd.DropTarget;importjava.awt.dnd.DropTargetDragEvent;importjava.awt.dnd.DropTargetDropEvent;importjava.awt.dnd.DropTargetEvent;importjava.awt.dnd.DropTargetListener;importjava.io.File;importjava.io.IOException;importjava.text.SimpleDateFormat;importjava.util.Date;importjavax.swing.JFileChooser;importjavax.swing.UIManager;/***
*@authorhadeslee*/publicclassMainextendsjavax.swing.JFrameimplementsDropTargetListener {privateJFileChooser jfc;privateFile toMd5;privateDropTarget dt;/**Creates new form Main*/publicMain() {try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception exe) {
exe.printStackTrace();
}
initComponents();
initOther();this.setLocationRelativeTo(null);
}privatevoidinitOther() {
dt=newDropTarget(jTextArea1, DnDConstants.ACTION_COPY_OR_MOVE,this);
}/**This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.*///privatevoidinitComponents() {
jLabel1=newjavax.swing.JLabel();
jTextField1=newjavax.swing.JTextField();
jButton1=newjavax.swing.JButton();
jScrollPane1=newjavax.swing.JScrollPane();
jTextArea1=newjavax.swing.JTextArea();
jButton2=newjavax.swing.JButton();
jButton3=newjavax.swing.JButton();
jpb=newjavax.swing.JProgressBar();
jLabel2=newjavax.swing.JLabel();
jTextField2=newjavax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("MD5生成");
setResizable(false);
jLabel1.setText("文件路径:");
jTextField1.setEditable(false);
jButton1.setText("浏览
");
jButton1.addActionListener(newjava.awt.event.ActionListener() {publicvoidactionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jScrollPane1.setBorder(javax.swing.BorderFactory.createTitledBorder("文件信息"));
jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jScrollPane1.setViewportView(jTextArea1);
jButton2.setText("生成");
jButton2.addActionListener(newjava.awt.event.ActionListener() {publicvoidactionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jButton3.setText("退出");
jButton3.addActionListener(newjava.awt.event.ActionListener() {publicvoidactionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jLabel2.setText("MD5值:");
jTextField2.setEditable(false);
javax.swing.GroupLayout layout=newjavax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,false)
.addGroup(layout.createSequentialGroup()
.addComponent(jButton2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButton3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jpb, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jTextField2))
.addComponent(jScrollPane1)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE,246, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButton1)))
.addContainerGap(16, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE,182, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,11, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(jButton3)
.addComponent(jpb, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
.addGroup(layout.createSequentialGroup()
.addGap(267,267,267)
.addComponent(jButton2)
.addGap(10,10,10))
);
pack();
}//privatevoidjButton1ActionPerformed(java.awt.event.ActionEvent evt) {//TODO add your handling code here:if(jfc==null) {
jfc=newJFileChooser();
jfc.setFileSelectionMode(JFileChooser.FILES_ONLY);
}if(jfc.showOpenDialog(this)==JFileChooser.APPROVE_OPTION) {
toMd5=jfc.getSelectedFile();
jTextField1.setText(toMd5.toString());
showFileInfo();
}
}privatevoidjButton2ActionPerformed(java.awt.event.ActionEvent evt) {//TODO add your handling code here:jButton2.setEnabled(false);newThread(){publicvoidrun(){
String s=Util.getMD5(toMd5, jpb);
jTextField2.setText(s);
jButton2.setEnabled(true);
}
}.start();
}privatevoidjButton3ActionPerformed(java.awt.event.ActionEvent evt) {//TODO add your handling code here:System.exit(0);
}privatevoidshowFileInfo() {if(toMd5!=null) {
SimpleDateFormat sdf=newSimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
File f=toMd5;
StringBuilder sb=newStringBuilder();
sb.append("文件名称:").append(f.getName()).append('\n');
sb.append("文件大小:").append(f.length()).append('\n');
sb.append("文件最后修改日期:").append(sdf.format(newDate(f.lastModified()))).append("\n");
sb.append("文件属性:").append(f.canWrite()?"读写":"只读").append('\n');
jTextArea1.setText(sb.toString());
}
}/***@paramargs the command line arguments*/publicstaticvoidmain(String args[]) {
java.awt.EventQueue.invokeLater(newRunnable() {publicvoidrun() {newMain().setVisible(true);
}
});
}//Variables declaration - do not modifyprivatejavax.swing.JButton jButton1;privatejavax.swing.JButton jButton2;privatejavax.swing.JButton jButton3;privatejavax.swing.JLabel jLabel1;privatejavax.swing.JLabel jLabel2;privatejavax.swing.JScrollPane jScrollPane1;privatejavax.swing.JTextArea jTextArea1;privatejavax.swing.JTextField jTextField1;privatejavax.swing.JTextField jTextField2;privatejavax.swing.JProgressBar jpb;//End of variables declarationpublicvoiddragEnter(DropTargetDragEvent dtde) {
dtde.acceptDrag(DnDConstants.ACTION_COPY_OR_MOVE);
}publicvoiddragOver(DropTargetDragEvent dtde) {
}publicvoiddropActionChanged(DropTargetDragEvent dtde) {
}publicvoiddragExit(DropTargetEvent dte) {
}publicvoiddrop(DropTargetDropEvent e) {try{if(e.isDataFlavorSupported(DataFlavor.javaFileListFlavor)) {
Transferable tr=e.getTransferable();
e.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
@SuppressWarnings("unchecked")
java.util.Listlist=(java.util.List) tr.getTransferData(DataFlavor.javaFileListFlavor);if(list.size()==1) {
File f=list.get(0);if(f.isFile()) {
toMd5=list.get(0);this.showFileInfo();
jTextField1.setText(toMd5.toString());
}
}
e.dropComplete(true);
}else{
e.rejectDrop();
}
}catch( IOException io) {
io.printStackTrace();
e.rejectDrop();
}catch( UnsupportedFlavorException ufe) {
ufe.printStackTrace();
e.rejectDrop();
}
}
}
java 生成 文件 md5_JAVA版文件MD5生成器相关推荐
- java生成pdf_Java实现PDF文件生成并且打印pdf文件 demo
## Java实现PDF生成并且打印pdf文件(附demo) #### 目录: 0. 效果预览 1. 准备环境 2. Java如何调用打印机进行打印 3. Java如何生成pdf打印文件 4. 实现p ...
- Java生成荣誉证书PDF文件
公司最近新需求要针对已经学完课程的同学提供下载结业证书,我们开发小组通过内部协商最终采用pdf方式让用户进行下载.操作pdf java 一般都是通过itext来实现,由于之前没有使用itext生成pd ...
- Java生成和操作Excel文件
JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...
- 用 java 生成 TexturePacker 的工程文件
一.主题: 用 java 实现一个自动生成 TexturePacker 工程文件的工具,以提高开发过程中自动化的程度. 二.环境: Mac OS X 1.7.2 TexturePacker 2.4.3 ...
- Java生成plist下载ipa文件
我们在上传ipa想要安装的时候必须要通过plist文件去下载,并且还要遵循 itms-services协议. 意思就是,第一步我们要生成一个plist文件, 第二步生成一个html文件,用来指向pli ...
- java计算图片md5_java 计算 文件 md5
public class MD5Check { /** * 默认的密码字符串组合,用来将字节转换成 16 进制表示的字符,apache校验下载的文件的正确性用的就是默认的这个组合 */ pro ...
- java生成 *.crt和*.key文件与*.keystore *.jks文件的转换
证书格式 名称 含义 .pem Privacy Enhanced Mail的缩写,一般是文本格式,可保存证书,可保存私钥,证书或密钥的Base64文本存储格式,打开看文本格式,以"-–BEG ...
- java生成dex_打包jar文件,jar转dex,class转dex等各种转换整理
打包jar文件 主模块build.gradle根路径加入任务 task makeJar(type: org.gradle.api.tasks.bundling.Jar) { //指定生成的jar名称 ...
- java 生成.sh文件,Java 生成Bat或SH文件,调用Sqlldr安插数据到Oracle
执行流程: 1.从ftp判断文件是否存在 2.下载文件 3.创建ctl文件 4.创建可执行文件,bat或sh文件,文件中是sqlldr命令代码 5.备份表并创建临时表 6.执行文件,插入数据 7.检查 ...
最新文章
- Android之线程池深度剖析
- 运算符的优先级和实际操作
- Android Glide加载图片成圆形
- java 二进制 定义_在Java中,我可以用二进制格式定义一个整数常量吗?
- mysqldump文件中有SET @@SESSION.SQL_LOG_BIN= 0;解决方法
- C++中数字与字符串之间的转换
- 什么样的音乐和呼噜声最配?
- C#实战之CAD二次开发005:打印pdf
- vs项目筛选器显示错乱、只显示部分文件
- ASEMI快恢复二极管SFP3006和瞬态二极管一样吗?SFP3006和TVS能否代换
- 国家信息系统安全等级保护基本要求——等保一级、二级、三级、四级内容
- 企业如何搭建呼叫中心?
- 算法精解_C语言 链表_单链表(接口定义+类型实现)
- 风控基础指标之决策树的特征选择
- 算法导论例题——钢管切割
- 最大数和最小数(排序)
- WordPress插件冲突的解决办法
- 二级管、半波整流、全波整流、桥式整流、全桥
- 使用Idea下载源码报Cannot Download Sources
- 奥巴马胜利演说英文及中文
热门文章
- 实验1动态规划——小明打王者
- org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException错误
- 解答:什么是卫星链路
- flowable会签时, act_run_task 表内有数据但是 assignee字段没值
- Cadence allegro移动、旋转、镜像器件
- java poi getcelltype_java – 替代已弃用的getCellType
- 【从零开始学Skynet】基础篇(九):调试控制台服务
- 你有什么样的职业规划?
- Python+Vue计算机毕业设计web的个人分享博客的设计与实现1w530(源码+程序+LW+部署)
- 天威诚信入选2021中国网络安全产业势能榜专精型厂商