Система контент-анализа естественно-языковых текстов

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



tion;java.util.logging.Level;java.util.logging.Logger;javax.swing.DefaultListModel;javax.swing.JFileChooser;dictionaries.MorphMain;java.io.BufferedWriter;java.io.EOFException;java.io.FileWriter;java.io.PrintWriter;java.util.Vector;javax.swing.JTable;javax.swing.JTextArea;javax.swing.ListSelectionModel;javax.swing.table.DefaultTableModel;

class MainWindow extends javax.swing.JFrame {

/** Creates new form NewJFrame */MainWindow() {();

}

MorphMain MM;String pathText;File FileName;For = new DefaultListModel();JTable getTable()

{jTable1;

}

JTextArea getTextArea()

{jTextArea1;

}

MorphMain getMorphDict()

{MM;

}

void LoadDictionary(MorphMain x)

{= x;

}void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {.setText("");.setText("");x;= new Union(this);(false);.setLimit(jSlider1.getValue());.start();

}

void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {.exit(0); // TODO add your handling code here:

}

void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {.exit(0); // TODO add your handling code here:

}

void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {

fc = new JFileChooser();.setFileHidingEnabled(true);.setCurrentDirectory(new File("C:\\Text\\"));.swing.filechooser.FileFilter[] ff = fc.getChoosableFileFilters(); // Удаление фильтра для всех файлов.removeChoosableFileFilter(ff[0]); //.addChoosableFileFilter(new TXTFilter());res = fc.showOpenDialog(this);(res == JFileChooser.APPROVE_OPTION) {= fc.getSelectedFile();.out.println(fc.getSelectedFile().getAbsolutePath());= FileName.getAbsolutePath();x;= new frameLoad(this, false);_Text lt = new Load_Text(FileName, x,this);.setEnabled(false);.start();

}

}

void jMenuItem10ActionPerformed(java.awt.event.ActionEvent evt) {k;= new Config();.setVisible(true);

}

void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {x;= new Union(this);(false);.setLimit(jSlider1.getValue());.start(); }void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {t;= new EditStopDict(this,true,MM);.setVisible(true);

}void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {apf;= new AppendFormsDict(this,true,MM);.setVisible(true);

}

void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {ff;= new FormsFind(this,true,MM);.setVisible(true);

}

void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {.setText("");.setText("");.setText("");.setValue(0);.setString("");();model = new DefaultTableModel(tableData, columnName);.setModel(model);

}

void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {res;re;(jTextArea2.getText().isEmpty()) {

javax.swing.JOptionPane.showMessageDialog(this,"Недостаточно данных для сохранения результата. Возможно, анализ не был проведен.");;

}fc = new JFileChooser();.setDialogTitle("Сохранение файла");.setFileSelectionMode(JFileChooser.FILES_ONLY);

fc.updateUI();= fc.showSaveDialog(this);(re == JFileChooser.APPROVE_OPTION) {

{out1 = null;{= new PrintWriter(new BufferedWriter(new FileWriter(fc.getSelectedFile().getAbsolutePath()+".txt")));.println("Файл - "+FileName.getAbsolutePath());

out1.println("Возможные ключевые слова: ");

out1.println(jTextArea2.getText());.close();

} catch (IOException ex) {.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);

}{{.close();

} catch (Exception ex) {.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);

}

}

}

.swing.JOptionPane.showMessageDialog(this,"Результаты успешно сохранены в файл");

}

}void jMenu3ActionPerformed(java.awt.event.ActionEvent evt) {a;= new About(this, true);.setVisible(true);

}

TXTFilter extends javax.swing.filechooser.FileFilter {boolean accept(java.io.File file) {(file.isDirectory()) return true;file.getName().endsWith("txt");

}String getDescription() {return "TXT файлы (*.txt)";};

}

/**

* @param args the command line arguments

*/static void main(String args[]) {{ javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

}(Exception e) {System.out.println("Ошибка иницилиазации:"+e.getMessage());}.awt.EventQueue.invokeLater(new Runnable() {void run() {MainWindow().setVisible(true);

}

});

}

// Variables declaration - do not modifyjavax.swing.JButton jButton1;javax.swing.JButton jButton2;javax.swing.JButton jButton4;javax.swing.JButton jButton6;javax.swing.JLabel jLabel1;javax.swing.JLabel jLabel2;javax.swing.JMenu jMenu1;javax.swing.JMenu jMenu2;javax.swing.JMenu jMenu3;javax.swing.JMenu jMenu4;javax.swing.JMenuBar jMenuBar1;javax.swing.JMenuItem jMenuItem1;javax.swing.JMenuItem jMenuItem10;javax.swing.JMenuItem jMenuItem2;javax.swing.JMenuItem jMenuItem3;javax.swing.JMenuItem jMenuItem4;javax.swing.JMenuItem jMenuItem5;javax.swing.JMenuItem jMenuItem6;javax.swing.JMenuItem jMenuItem7;javax.swing.JPanel jPanel1;javax.swing.JPanel jPanel2;javax.swing.JPanel jPanel3;javax.swing.JProgressBar jProgressBar1;javax.swing.JScrollPane jScrollPane1;javax.swing.JScrollPane jScrollPane2;javax.swing.JScrollPane jScrollPane4;javax.swing.JScrollPane jScrollPane5;javax.swing.JSeparator jSeparator1;javax.swing.JSeparator jSeparator2;javax.swing.JSlider jSlider1;javax.swing.JTable jTable1;javax.swing.JTextArea jTextArea1;javax.swing.JTextArea jTextArea2;javax.swing.JTextArea jTextArea3;javax.swing.JTextField jTextField1;org.jdesktop.beansbinding.BindingGroup bindingGroup;

// End of variables declaration

}

interfaces;

analysis.Start_options;java.awt.Color;java.awt.Font;java.awt.Graphics;java.awt.Image;java.awt.image.BufferedImage;java.awt.image.ImageObserver;java.awt.image.ImageProducer;java.io.File;java.io.FileNotFoundException;java.io.IOException;java.util.logging.Level;java.util.logging.Logger;javax.imageio.ImageIO;dictionaries.MorphMain;java.io.BufferedReader;java.io.FileReader;

class startwindow extends javax.swing.JFrame {Image i;

/** Creates new form startwindow */startwindow() {();

}void activate(java.awt.event.WindowEvent evt) {in = null;{d;= this.getGraphics();bufImg = null;{= ImageIO.read(new File("golubie tona.png"));

} catch (IOException e) {.printStackTrace();

}(bufImg != null) {.drawImage(bufImg, 0, 0, bufImg.getWidth(), bufImg.getHeight(), null);

}.setFont(new Font("Courier New", Font.BOLD, 32));.setColor(Color.BLACK);.drawString("{СКАТ}", 410, 215);.setFont(new Font("Courier New", Font.BOLD, 16));.setColor(Color.BLACK);.drawString("Система контент анализа естественно-языковых текстов", 8, this.getHeight() - 100);.updateUI();= new BufferedReader(new FileReader("Config.ini"));_options so;= new Start_options();y;((y=in.readLine()) != null )

{.setParam(y); }MM = new MorphMain(this,so);.start();

} catch (IOException ex) {.getLogger(startwindow.class.getName()).log(Level.SEVERE, null, ex);

} finally {{.close();

} catch (IOException ex) {.getLogger(startwindow.class.getName()).log(Level.SEVERE, null, ex);

}

}

}

/**

* @param args the command line arguments

*/static void main(String args[]) {.awt.EventQueue.invokeLater(new Runnable() {void run() {startwindow().setVisible(true);

}

});

}

// Variables declaration - do not modifyjavax.swing.JProgressBar jProgressBar1;

// End of variables declaration

}

Приложение 2

ГРАФИЧЕСКИЙ МАТЕРИАЛ

Графический материал включает:

?Лист 1: постановка задачи,

?Лист 2: модель предметной области,

?Лист 3: функция поиска ключевых слов,

?Лист 4: структура таблицы лексем,

?Лист 5: структура элемента списка таблицы,

?Лист 6: структура вершины дерева морфологического словаря,

?Лист 7: структура поля признаков,

?Лист 8: структура морфологического словаря,

?Лист 9: схема алгоритма поиска,

?Лист 10: схема алгоритма склеивания,

?Лист 11: модель вариантов использования,

?Лист 12: интерфейс программы,

?Лист 13: тестовый пример анализа.

Графический материал выполнен в программе Компас-3D, и представлен ниже.