Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package thieu.mao;
- import java.awt.FileDialog;
- import java.io.*;
- import javax.swing.JOptionPane;
- /**
- *
- * @author Thieu Mao
- */
- public class frmGUI extends javax.swing.JFrame {
- /** Creates new form frmGUI */
- public frmGUI() {
- initComponents();
- }
- @SuppressWarnings("unchecked")
- // <editor-fold defaultstate="collapsed" desc="Generated Code">
- private void initComponents() {
- tab = new javax.swing.JTabbedPane();
- pnlEncrypt = new javax.swing.JPanel();
- jLabel2 = new javax.swing.JLabel();
- jLabel3 = new javax.swing.JLabel();
- txtFile = new javax.swing.JTextField();
- btnBw = new javax.swing.JButton();
- btnMahoa = new javax.swing.JButton();
- btnExit = new javax.swing.JButton();
- pnlDeCrypt = new javax.swing.JPanel();
- jLabel4 = new javax.swing.JLabel();
- txtFileMH = new javax.swing.JTextField();
- btnBWMH = new javax.swing.JButton();
- jLabel5 = new javax.swing.JLabel();
- txtKey = new javax.swing.JTextField();
- btnKey = new javax.swing.JButton();
- jLabel6 = new javax.swing.JLabel();
- btnGiaima = new javax.swing.JButton();
- jPanel1 = new javax.swing.JPanel();
- jLabel1 = new javax.swing.JLabel();
- setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
- setTitle("Encryption / Decrytion");
- setResizable(false);
- pnlEncrypt.setBackground(new java.awt.Color(153, 204, 255));
- jLabel2.setFont(new java.awt.Font("Tahoma", 1, 13)); // NOI18N
- jLabel2.setText("Chọn một file để mã hóa:");
- jLabel3.setText("File:");
- btnBw.setText("...");
- btnBw.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnBwActionPerformed(evt);
- }
- });
- btnMahoa.setText("Mã hóa");
- btnMahoa.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnMahoaActionPerformed(evt);
- }
- });
- btnExit.setText("Exit");
- btnExit.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnExitActionPerformed(evt);
- }
- });
- javax.swing.GroupLayout pnlEncryptLayout = new javax.swing.GroupLayout(pnlEncrypt);
- pnlEncrypt.setLayout(pnlEncryptLayout);
- pnlEncryptLayout.setHorizontalGroup(
- pnlEncryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlEncryptLayout.createSequentialGroup()
- .addGap(144, 144, 144)
- .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGap(160, 160, 160))
- .addGroup(pnlEncryptLayout.createSequentialGroup()
- .addGroup(pnlEncryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlEncryptLayout.createSequentialGroup()
- .addGap(91, 91, 91)
- .addComponent(btnMahoa)
- .addGap(60, 60, 60)
- .addComponent(btnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 71, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGroup(pnlEncryptLayout.createSequentialGroup()
- .addGap(26, 26, 26)
- .addComponent(jLabel3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(txtFile, javax.swing.GroupLayout.PREFERRED_SIZE, 290, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(btnBw)))
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
- pnlEncryptLayout.setVerticalGroup(
- pnlEncryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlEncryptLayout.createSequentialGroup()
- .addGap(22, 22, 22)
- .addComponent(jLabel2)
- .addGap(28, 28, 28)
- .addGroup(pnlEncryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(txtFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(btnBw)
- .addComponent(jLabel3))
- .addGap(38, 38, 38)
- .addGroup(pnlEncryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(btnMahoa)
- .addComponent(btnExit))
- .addContainerGap(39, Short.MAX_VALUE))
- );
- tab.addTab("Encrypt", pnlEncrypt);
- pnlDeCrypt.setBackground(new java.awt.Color(153, 204, 255));
- jLabel4.setText("File mã hóa");
- btnBWMH.setText("...");
- btnBWMH.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnBWMHActionPerformed(evt);
- }
- });
- jLabel5.setText("key giải mã");
- btnKey.setText("...");
- btnKey.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnKeyActionPerformed(evt);
- }
- });
- jLabel6.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
- jLabel6.setForeground(new java.awt.Color(0, 0, 153));
- jLabel6.setText("Chọn file cần giải mã và chọn key giải mã");
- btnGiaima.setText("Giải mã");
- btnGiaima.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnGiaimaActionPerformed(evt);
- }
- });
- javax.swing.GroupLayout pnlDeCryptLayout = new javax.swing.GroupLayout(pnlDeCrypt);
- pnlDeCrypt.setLayout(pnlDeCryptLayout);
- pnlDeCryptLayout.setHorizontalGroup(
- pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addGroup(pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addGap(19, 19, 19)
- .addGroup(pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jLabel4)
- .addComponent(jLabel5))
- .addGap(18, 18, 18)
- .addGroup(pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addComponent(txtKey, javax.swing.GroupLayout.PREFERRED_SIZE, 245, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(btnKey))
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addComponent(txtFileMH, javax.swing.GroupLayout.PREFERRED_SIZE, 245, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(btnBWMH))))
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addGap(70, 70, 70)
- .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGap(43, 43, 43)))
- .addGap(32, 32, 32))
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addGap(171, 171, 171)
- .addComponent(btnGiaima)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
- pnlDeCryptLayout.setVerticalGroup(
- pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(pnlDeCryptLayout.createSequentialGroup()
- .addGap(19, 19, 19)
- .addComponent(jLabel6)
- .addGap(18, 18, 18)
- .addGroup(pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel4)
- .addComponent(txtFileMH, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(btnBWMH))
- .addGap(18, 18, 18)
- .addGroup(pnlDeCryptLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(txtKey, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(btnKey)
- .addComponent(jLabel5))
- .addGap(18, 18, 18)
- .addComponent(btnGiaima)
- .addContainerGap(30, Short.MAX_VALUE))
- );
- tab.addTab("Decrypt", pnlDeCrypt);
- jPanel1.setBackground(new java.awt.Color(153, 204, 255));
- jLabel1.setFont(new java.awt.Font("Tahoma", 1, 15)); // NOI18N
- jLabel1.setForeground(new java.awt.Color(0, 0, 153));
- jLabel1.setText("Thieu Mao - KSEC");
- javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
- jPanel1.setLayout(jPanel1Layout);
- jPanel1Layout.setHorizontalGroup(
- jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
- .addGap(134, 134, 134)
- .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 177, Short.MAX_VALUE)
- .addGap(112, 112, 112))
- );
- jPanel1Layout.setVerticalGroup(
- jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addGap(62, 62, 62)
- .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGap(108, 108, 108))
- );
- tab.addTab("About", jPanel1);
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(tab, javax.swing.GroupLayout.PREFERRED_SIZE, 428, Short.MAX_VALUE)
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(tab)
- );
- pack();
- }// </editor-fold>
- private void btnBwActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- File file = getFileDialogOpen("*.*");
- if(file== null)
- return;
- txtFile.setText(file.getAbsolutePath());
- }
- private void btnMahoaActionPerformed(java.awt.event.ActionEvent evt) {
- }
- private void btnExitActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- System.exit(0);
- }
- private void btnBWMHActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- File file = getFileDialogOpen("*.enc");
- if(file == null) return;
- txtFileMH.setText(file.getAbsolutePath());
- }
- private void btnKeyActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- File file = getFileDialogOpen("*.key");
- if(file == null)return;
- txtKey.setText(file.getAbsolutePath());
- }
- private void btnGiaimaActionPerformed(java.awt.event.ActionEvent evt) {
- }
- /**
- * @param args the command line arguments
- */
- // Variables declaration - do not modify
- private javax.swing.JButton btnBWMH;
- private javax.swing.JButton btnBw;
- private javax.swing.JButton btnExit;
- private javax.swing.JButton btnGiaima;
- private javax.swing.JButton btnKey;
- private javax.swing.JButton btnMahoa;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JLabel jLabel3;
- private javax.swing.JLabel jLabel4;
- private javax.swing.JLabel jLabel5;
- private javax.swing.JLabel jLabel6;
- private javax.swing.JPanel jPanel1;
- private javax.swing.JPanel pnlDeCrypt;
- private javax.swing.JPanel pnlEncrypt;
- private javax.swing.JTabbedPane tab;
- private javax.swing.JTextField txtFile;
- private javax.swing.JTextField txtFileMH;
- private javax.swing.JTextField txtKey;
- // End of variables declaration
- //<editor-fold defaultstate="collapsed" desc="Cac ham chuc nang">
- private File getFileDialogOpen(String string) {
- FileDialog fd = new FileDialog(this, "Chọn file", FileDialog.LOAD);
- fd.setFile(string);
- fd.setVisible(true);
- if (fd.getFile()==null) {
- return null;
- }
- File file = new File(fd.getDirectory()+fd.getFile());
- if(!file.canRead()){
- JOptionPane.showMessageDialog(null, "File bạn chọn không thể đọc.",
- "Error",JOptionPane.ERROR_MESSAGE);
- return null;
- }
- return file;
- }
- private byte[] readByteFile(File file) {
- byte[] data=null;
- try {
- FileInputStream fi = new FileInputStream(file);
- int c,i=0;
- data = new byte[(int)file.length()];
- while((c = fi.read())!=-1)
- {
- data[i++] = (byte)c;
- }
- fi.close();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, file.getName()+" không thể đọc file",
- "Error", JOptionPane.ERROR_MESSAGE);
- return null;
- }
- return data;
- }
- private boolean writeByFile(String fileName, byte[]data){
- File file = new File(fileName);
- if(!file.canWrite()){
- try {
- file.createNewFile();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, "Không thể tạo file "+file.getName(),
- "Error", JOptionPane.ERROR_MESSAGE);
- return false;
- }
- }
- try {
- FileOutputStream fo = new FileOutputStream(file);
- fo.write(data);
- fo.close();
- return true;
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, "Không thể ghi file "+file.getName(),
- "Error", JOptionPane.ERROR_MESSAGE);
- return false;
- }
- }
- private Object readObjectFile(File file){
- Object obj;
- try {
- ObjectInputStream ois = new ObjectInputStream(new FileInputStream(file));
- obj = (Object)ois.readObject();
- ois.close();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, "Không thể đọc được file "+file.getName(),
- "Error", JOptionPane.ERROR_MESSAGE);
- return null;
- }
- return obj;
- }
- private boolean writeObjectFile(String filename, Object data){
- File file = new File(filename);
- if(!file.canWrite()){
- try {
- file.createNewFile();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, "Không thể tạo được file "+file.getName(),
- "Error", JOptionPane.ERROR_MESSAGE);
- return false;
- }
- }
- try {
- ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file));
- oos.writeObject(data);
- oos.close();
- return true;
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, "Không thể ghi dữ liệu lên file "+ file.getName(),
- "Error",JOptionPane.ERROR_MESSAGE);
- return false;
- }
- }
- //</editor-fold>
- }
Advertisement
Add Comment
Please, Sign In to add comment