Membuat Aplikasi Pengolahan Teks Menggunakan Pemrograman Java NetBeans


Pengolahan teks mencakup:

  • Information retrieval: pencarian dokumen
  • Klasifikasi dokumen: membagi dokumen ke dalam kelas-kelas yang telah ditentukan sebelumnya. Misalnya secara otomatis dapat menentukan apakah dokumen ini masuk ke dalam kategori politik, ekonomi, militer dan lain sebagainya.
  • Document Clustering: mirip dengan klasifikasi dokumen, hanya saja kelas dokumen tidak ditentukan sebelumnya. Misalnya berita tentang lalulintas dapat menjadi satu kelas dengan berita tentang kriminal karena didalamnya banyak memuat tentang orang yang tewas, cedera, rumah sakit dsb.
  • Peringkasan teks. Menghasilkan ringkasan suatu dokumen secara otomatis.
  • Ekstraksi informasi. Mengekstrak informasi yang dianggap penting dari suatu dokumen. Misalnya pada dokumen lowongan, walaupun memiliki format beragam dapat diekstrak secara otomatis job title, tingkat pendidikan, penguasaan bahasa dsb.

Berikut ini contoh pengolahan teks sederhana dengan menghitung jumlah kata yang sama

Buat class java untuk menyeting format tampilan tabel

ModelTabel.java
public final class ModelTabel extends AbstractTableModel {
    private String[] colNames = {"",""};
    private Object[][] data = new Object[1][2];
    private int count;

    public ModelTabel(){
       
    }
   
    public ModelTabel(Vector v, Vector d) {
        int vs, ds=0;
        vs = v.size();
        ds = d.size();
       
        colNames[0] = "Kata";
        colNames[1] = "Jumlah Kata";
        data = new Object[vs][2];
        try{
            this.setData(v, d, vs);
        }
        catch(Exception e){
            JOptionPane.showMessageDialog(null,"Format Data tidak sama !!","Message",JOptionPane.INFORMATION_MESSAGE);
            data = new Object[vs][2];
        }
    }
   
    public ModelTabel(Vector v) {
        int vs;
        vs = v.size();
        colNames[0] = "No";
        colNames[1] = "Nama File";
        data = new Object[vs][2];
        try{
            this.setData(v, vs);
        }
        catch(Exception e){
            JOptionPane.showMessageDialog(null,"Format Data tidak sama !!","Message",JOptionPane.INFORMATION_MESSAGE);
            data = new Object[vs][2];
        }
    }

    @Override
    public int getRowCount() {
        return data.length;
    }

    @Override
    public int getColumnCount() {
        return colNames.length;
    }
   
    @Override
    public String getColumnName(int col) {
        return colNames[col];
    }
    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        return data[rowIndex][columnIndex];
    }
   
    @Override
    public void setValueAt(Object value, int row, int col) {
        data[row][col] = value;
        fireTableCellUpdated(row,col);
    }
   
    public void setData(Vector v, Vector d, int j){
        int i;
        for(i=0; i<j; i++){
            data[i][0] = v.elementAt(i);
            data[i][1] = d.elementAt(i);
        }
        count = i;
    }
   
    public void setData(Vector v, int j){
        int i;
        for(i=0; i<j; i++){
            data[i][0] = i+1;
            data[i][1] = v.elementAt(i);
        }
        count = i;
    }
}

Berikut potongan source code untuk membaca teks dari file

void bacaText( String f) {
        taText.setText("");
        BufferedReader fileReader ;
        //proses pembacaan
        File file = new File(f);
        try{
            byte[] buffer = new byte[1024];
            BufferedInputStream bufferedInput = new BufferedInputStream(new FileInputStream(f));
            int bytesRead = 0;
            while ((bytesRead = bufferedInput.read(buffer)) != -1) {
                String kt = new String(buffer, 0, bytesRead);
                taText.append(kt);
            }
            bufferedInput.close();
        } catch(IOException io){
            JOptionPane.showMessageDialog(null,"File not support !!","Message",JOptionPane.INFORMATION_MESSAGE);
        } catch(NoSuchElementException e){
            JOptionPane.showMessageDialog(null,"Format tidak sama !!","Message",JOptionPane.INFORMATION_MESSAGE);
        }
    }

Berikut potongan source code untuk membaca teks dari file beserta menghitung kata

    private void bacaIsiFile(String path){
        Vector dataKata = new Vector();
        Vector jumkata = new Vector();
       
        int count=0, loop=0;
        BufferedReader fileReader ;
        StringTokenizer st;
        File file = new File(path);
        try{
            fileReader = new BufferedReader(new FileReader(file));
            while(true){
                String line = fileReader.readLine();
            //    taText.append(line);
               
                if (line == null)
                    break ;
                line = line.replace(".", " ");
                line = line.replace("/", " ");
                line = line.replace("(", " ");
                line = line.replace(")", " ");
                line = line.replace(",", " ");
                line = line.replace("<", " ");
                line = line.replace(">", " ");
                line = line.replace("?", " ");
                line = line.replace("\'", " ");
                line = line.replace("\"", " ");
                line = line.replace("!", " ");
                line = line.replace("@", " ");
                line = line.replace("#", " ");
                line = line.replace("$", " ");
                line = line.replace("&", " ");
                line = line.replace(":", " ");
                line = line.replace(";", " ");
                line = line.replace("[", " ");
                line = line.replace("]", " ");
                line = line.replace("{", " ");
                line = line.replace("}", " ");
                line = line.replace("\\", " ");
                line = line.replace("|", " ");
                line = line.replace("+", " ");
                line = line.replace("=", " ");
                line = line.replace("-", " ");
                line = line.replace("*", " ");
                line = line.replace("^", " ");
                line = line.replace("%", " ");
                line = line.replace("`", " ");
                line = line.replace("~", " ");
               
                st = new StringTokenizer(line);
                while(st.hasMoreTokens()){
                    count = 1;
                    String kt = st.nextToken();
                    kt=kt.toLowerCase();
                    if (kt.equals(":")||kt.equals("|")||kt.equals("?"))
                        continue;
                    else {
                        if(dataKata.isEmpty()){
                            dataKata.add(kt);
                            jumkata.add(loop, 1);
                        } else{
                            for(int i=0; i<dataKata.size(); i++){
                                if(kt.equalsIgnoreCase(dataKata.get(i).toString())){
                                    count = Integer.parseInt(jumkata.get(i).toString());
                                    count++;
                                    jumkata.set(i, count);
                                }
                            }
                            if(count==1){
                                dataKata.add(kt);
                                loop++;
                                jumkata.add(1);
                            }
                        }
                    }
                }
            }
            tblKata.setModel(new ModelTabel(dataKata,jumkata));
         
            this.tulisText(dataKata, jumkata, path.substring(0, path.length()-4)+"_hasil"+path.substring(path.length()-4,path.length()));
        } catch(IOException io){
            JOptionPane.showMessageDialog(null,"No file  !!","Message",JOptionPane.INFORMATION_MESSAGE);
        } catch(NoSuchElementException e){
            JOptionPane.showMessageDialog(null,"Format tidak sama !!","Message",JOptionPane.INFORMATION_MESSAGE);
        }
    }

Berikut potongan source code untuk menulis teks ke file

    private void tulisText(Vector kt,Vector jum,String target){
        String line ;
        PrintWriter fout = null ;
        File file1 = new File(target);
        try{
            fout = new PrintWriter(new FileWriter(file1));
            fout.flush();
            for(int i=0;i<kt.size();i++){
                fout.println(kt.elementAt(i).toString()+" = "+jum.elementAt(i).toString()+"\n");
               
            }
            fout.close();
        } catch(Exception e){
            JOptionPane.showMessageDialog(null,"File tidak dapat dituliskan !!","Message",JOptionPane.INFORMATION_MESSAGE);
            fout.close();
        }
    }

Membuat Aplikasi Pengolahan Teks Menggunakan Pemrograman Java NetBeans Membuat Aplikasi Pengolahan Teks Menggunakan Pemrograman Java NetBeans Reviewed by antkecil on 21:12 Rating: 5

Post Comments

No comments:

Powered by Blogger.