Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package ant.jfilechooser;
- import java.io.*;
- import javax.swing.JFileChooser;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- /**
- *
- * @author gatotkoco
- */
- public class FormUtama extends javax.swing.JFrame {
- JFileChooser fc=null;
- private Object fstream;
- private Object br;
- private Object CBsensitive;
- private Object scontain;
- private Object caritxt;
- private Object smatch;
- private Object jumlah;
- /**
- * Creates new form FormUtama
- */
- public FormUtama() {
- initComponents();
- fc = new JFileChooser();
- fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
- }
- /**
- * 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.
- */
- @SuppressWarnings("unchecked")
- // <editor-fold defaultstate="collapsed" desc="Generated Code">
- private void initComponents() {
- txtkata = new java.awt.TextArea();
- clGlossyPanel2 = new GlossyPanel.ClGlossyPanel();
- btnbrowse = new javax.swing.JButton();
- labelBrowse = new javax.swing.JLabel();
- clGlossyPanel3 = new GlossyPanel.ClGlossyPanel();
- txtFcari = new javax.swing.JTextField();
- lblcari = new java.awt.Label();
- btnhitung = new javax.swing.JButton();
- jScrollPane2 = new javax.swing.JScrollPane();
- jList2 = new javax.swing.JList();
- lblmenucari = new javax.swing.JLabel();
- jLabel1 = new javax.swing.JLabel();
- jLabel2 = new javax.swing.JLabel();
- lbljmlh = new javax.swing.JLabel();
- tot = new javax.swing.JLabel();
- setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
- setTitle("Kelompok 1 Scanner PHP");
- setForeground(java.awt.Color.lightGray);
- addComponentListener(new java.awt.event.ComponentAdapter() {
- public void componentHidden(java.awt.event.ComponentEvent evt) {
- formComponentHidden(evt);
- }
- });
- btnbrowse.setText("Browse");
- btnbrowse.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnbrowseActionPerformed(evt);
- }
- });
- labelBrowse.setFont(new java.awt.Font("Ubuntu Light", 1, 12)); // NOI18N
- labelBrowse.setLabelFor(clGlossyPanel2);
- labelBrowse.setText("Tekan Browse memilih file");
- javax.swing.GroupLayout clGlossyPanel2Layout = new javax.swing.GroupLayout(clGlossyPanel2);
- clGlossyPanel2.setLayout(clGlossyPanel2Layout);
- clGlossyPanel2Layout.setHorizontalGroup(
- clGlossyPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(clGlossyPanel2Layout.createSequentialGroup()
- .addGap(34, 34, 34)
- .addComponent(labelBrowse, javax.swing.GroupLayout.PREFERRED_SIZE, 189, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(btnbrowse, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(32, 32, 32))
- );
- clGlossyPanel2Layout.setVerticalGroup(
- clGlossyPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(clGlossyPanel2Layout.createSequentialGroup()
- .addGap(24, 24, 24)
- .addGroup(clGlossyPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(labelBrowse)
- .addComponent(btnbrowse))
- .addGap(19, 19, 19))
- );
- lblcari.setText("Cari Kata");
- javax.swing.GroupLayout clGlossyPanel3Layout = new javax.swing.GroupLayout(clGlossyPanel3);
- clGlossyPanel3.setLayout(clGlossyPanel3Layout);
- clGlossyPanel3Layout.setHorizontalGroup(
- clGlossyPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(clGlossyPanel3Layout.createSequentialGroup()
- .addGap(18, 18, 18)
- .addComponent(lblcari, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(txtFcari, javax.swing.GroupLayout.PREFERRED_SIZE, 270, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(78, Short.MAX_VALUE))
- );
- clGlossyPanel3Layout.setVerticalGroup(
- clGlossyPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(clGlossyPanel3Layout.createSequentialGroup()
- .addContainerGap()
- .addGroup(clGlossyPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(txtFcari, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(lblcari, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
- btnhitung.setText("Proses");
- btnhitung.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btnhitungActionPerformed(evt);
- }
- });
- jList2.setModel(new javax.swing.AbstractListModel() {
- String[] strings = { "include ", "empty{}", "and", "case", "echo", "if", "else", "var", "elseif", "endif" };
- public int getSize() { return strings.length; }
- public Object getElementAt(int i) { return strings[i]; }
- });
- jScrollPane2.setViewportView(jList2);
- lblmenucari.setText("Menu Cari");
- jLabel1.setFont(new java.awt.Font("Dialog", 0, 14)); // NOI18N
- jLabel1.setText("Jumlah Kata");
- jLabel2.setFont(new java.awt.Font("Dialog", 0, 18)); // NOI18N
- jLabel2.setText("Total Kata");
- lbljmlh.setFont(new java.awt.Font("Dialog", 1, 18)); // NOI18N
- lbljmlh.setText("0");
- tot.setFont(new java.awt.Font("Dialog", 1, 18)); // NOI18N
- tot.setText("0");
- javax.swing.GroupLayout layout = new javax.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)
- .addGroup(layout.createSequentialGroup()
- .addComponent(txtkata, javax.swing.GroupLayout.PREFERRED_SIZE, 596, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(0, 36, Short.MAX_VALUE))
- .addGroup(layout.createSequentialGroup()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addGap(12, 12, 12)
- .addComponent(lblmenucari))
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
- .addComponent(clGlossyPanel3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(clGlossyPanel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addGap(0, 0, Short.MAX_VALUE)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addComponent(jLabel2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(tot))
- .addGroup(layout.createSequentialGroup()
- .addComponent(jLabel1)
- .addGap(18, 18, 18)
- .addComponent(lbljmlh)))
- .addGap(29, 29, 29)))
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(btnhitung, javax.swing.GroupLayout.PREFERRED_SIZE, 134, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 172, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 188, Short.MAX_VALUE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(btnhitung, javax.swing.GroupLayout.PREFERRED_SIZE, 61, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(tot)
- .addComponent(jLabel2))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))
- .addGroup(layout.createSequentialGroup()
- .addComponent(clGlossyPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(lblmenucari)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(clGlossyPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(18, 18, 18)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(lbljmlh))
- .addGap(0, 0, Short.MAX_VALUE)))
- .addComponent(txtkata, javax.swing.GroupLayout.PREFERRED_SIZE, 247, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(32, 32, 32))
- );
- pack();
- }// </editor-fold>
- private void btnbrowseActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- int buka = fc.showOpenDialog(this);
- if(buka == JFileChooser.APPROVE_OPTION){
- File file = fc.getSelectedFile();
- labelBrowse.setText(file.getAbsolutePath());
- }else{
- labelBrowse.setText("Tidak ada file yang dipilih");
- }
- }
- private void formComponentHidden(java.awt.event.ComponentEvent evt) {
- // TODO add your handling code here:
- }
- private void btnhitungActionPerformed(java.awt.event.ActionEvent evt) {
- // Deklarasi variabel:
- // variable declaration:
- txtkata.setText(null);
- String s = null;
- String cari = txtFcari.getText().trim();
- String strArray[];
- ArrayList gabArray = new ArrayList();
- int jml = 0;
- int total = 0;
- //mengambil kata dari hasil browse
- try {
- FileInputStream labelBrowsetxt;
- labelBrowsetxt = new FileInputStream(labelBrowse.getText());
- DataInputStream In = new DataInputStream(labelBrowsetxt);
- InputStream in = null;
- BufferedReader br = new BufferedReader(new InputStreamReader(in));
- String strLine;
- //Membuat Array split kalimat
- while ((strLine = br.readLine()) != null) {
- strArray = strLine.split("[0-9,.;= #$%^&)(]"); //memisahkan array tiap KATA berdasar(" ");
- List list = Arrays.asList(strArray);
- //Collections.sort(list, String.CASE_INSENSITIVE_ORDER); //Mengurutkan array List
- gabArray.addAll(list);
- for(int i=0; i < list.size(); i++){
- int jumlah = 0;
- int totkat = 0;
- {
- //Select Match Word
- if(strArray[i].length() !=0){
- jumlah++;
- } else {totkat++;}
- }
- }
- }
- String [] cetak = (String []) gabArray.toArray(new String[gabArray.size()]);
- txtkata.append("\r\n" + "==== Jumlah kata'" + txtFcari +"'Ditemukan: "+jml+"=====");
- lbljmlh.setText(Integer.toString(jml));
- tot.setText(Integer.toString(total+jml));
- in.close();
- } catch (IOException ex) {
- txtkata.setText("Ada kesalahan pada: " + ex.getMessage());
- }
- }
- /**
- * @param args the command line arguments
- */
- /**
- * @param args the command line arguments
- */
- public static void main(String args[]) {
- /* Set the Nimbus look and feel */
- //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
- /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
- * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
- */
- try {
- for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
- if ("Nimbus".equals(info.getName())) {
- javax.swing.UIManager.setLookAndFeel(info.getClassName());
- break;
- }
- }
- } catch (ClassNotFoundException ex) {
- java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (InstantiationException ex) {
- java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (IllegalAccessException ex) {
- java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (javax.swing.UnsupportedLookAndFeelException ex) {
- java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- }
- //</editor-fold>
- /* Create and display the form */
- java.awt.EventQueue.invokeLater(new Runnable() {
- @Override
- public void run() {
- new FormUtama().setVisible(true);
- }
- });
- }
- // Variables declaration - do not modify
- private javax.swing.JButton btnbrowse;
- private javax.swing.JButton btnhitung;
- private GlossyPanel.ClGlossyPanel clGlossyPanel2;
- private GlossyPanel.ClGlossyPanel clGlossyPanel3;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JList jList2;
- private javax.swing.JScrollPane jScrollPane2;
- private javax.swing.JLabel labelBrowse;
- private java.awt.Label lblcari;
- private javax.swing.JLabel lbljmlh;
- private javax.swing.JLabel lblmenucari;
- private javax.swing.JLabel tot;
- private javax.swing.JTextField txtFcari;
- private java.awt.TextArea txtkata;
- // End of variables declaration
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement