Guest User

Untitled

a guest
Dec 14th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. import java.awt.EventQueue;
  2. import java.awt.event.ActionEvent;
  3. import java.awt.event.ActionListener;
  4. import java.io.BufferedReader;
  5. import java.io.File;
  6. import java.io.FileReader;
  7. import java.io.IOException;
  8. import javax.swing.JFileChooser;
  9. import javax.swing.JFrame;
  10. import javax.swing.JLabel;
  11. import javax.swing.JMenu;
  12. import javax.swing.JMenuBar;
  13. import javax.swing.JMenuItem;
  14. import javax.swing.JScrollPane;
  15. import javax.swing.JTable;
  16. import javax.swing.filechooser.FileFilter;
  17. import javax.swing.filechooser.FileNameExtensionFilter;
  18. import javax.swing.table.DefaultTableModel;
  19.  
  20. //Main Class ---> GUI
  21. public class GUI extends JFrame {
  22.  
  23. public static void main(String[] args) {
  24. EventQueue.invokeLater(new Runnable() {
  25. public void run() {
  26. GUI frame = new GUI(); // Create GUI
  27. frame.setVisible(true); // Set True for show GUI
  28. }
  29. });
  30. }
  31.  
  32. public GUI() {
  33.  
  34. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  35. setBounds(0,0,700,550); // Set size and position GUI
  36. setTitle("GUI TEST"); // Set Title
  37. getContentPane().setLayout(null);
  38.  
  39. // Menu
  40. JMenuBar menuBar = new JMenuBar(); // Create Menubar
  41. JMenu menu1 = new JMenu("File"); // Create Menu 'File'
  42. JMenuItem menu1_1 = new JMenuItem("Open File"); // MenuItem ' Open File'
  43. menu1.add(menu1_1); // add MenuItem in Menu
  44. menuBar.add(menu1); // add Menu in MenuItem
  45. setJMenuBar(menuBar);
  46.  
  47. // Label Result
  48. final JLabel lblResult = new JLabel("Humidity and temperature", JLabel.CENTER); // Create JLabel
  49. lblResult.setBounds(230, 30, 200, 30); // Set size and position JLabel
  50. getContentPane().add(lblResult);
  51.  
  52. // Table
  53. JTable table = new JTable(); // Create JTable
  54. getContentPane().add(table); // add JTable in GUI
  55.  
  56. // Table Model
  57. final DefaultTableModel model = (DefaultTableModel)table.getModel();
  58. model.addColumn("Humidity"); // Create Column and add to Jtable
  59. model.addColumn("Temp(C)"); // Create Column and add to Jtable
  60. model.addColumn("Temp(F)"); // Create Column and add to Jtable
  61.  
  62. // ScrollPane
  63. JScrollPane scroll = new JScrollPane(table); // Create Scroll in Jtable
  64. scroll.setBounds(84, 70, 500, 300);
  65. getContentPane().add(scroll); // add Scroll in GUI
  66.  
  67. menu1_1.addActionListener(new ActionListener() { // Action Even for Menu
  68. public void actionPerformed(ActionEvent e) {
  69. JFileChooser fileopen = new JFileChooser(); // Choose File
  70. FileFilter filter = new FileNameExtensionFilter( // File Type : ' Text,CSV,JSON'
  71. "Text/CSV file", "txt", "csv");
  72. fileopen.addChoosableFileFilter(filter);
  73. int ret = fileopen.showDialog(null, "Choose file"); // Open File
  74. if (ret == JFileChooser.APPROVE_OPTION ) {
  75. File file = fileopen.getSelectedFile();
  76. try {
  77. BufferedReader br = new BufferedReader(new FileReader(file)); // Read file
  78. String line; // in Line
  79. int row = 0 ; // Set row
  80. while ((line = br.readLine()) != null ) {
  81. String[] arr = line.split(","); // split ',' (CSV file)
  82. model.addRow(new Object[0]);
  83. model.setValueAt(arr[0], row,0); // add data first to row0
  84. model.setValueAt(arr[1], row,1); // add data second to row1
  85. model.setValueAt(arr[2], row,2); // add data third to row2
  86. row++;
  87. }
  88. br.close();
  89. } catch (IOException ex) {
  90. ex.printStackTrace();
  91. }
  92. }
  93. }
  94. });
  95. }
  96.  
  97. }
Add Comment
Please, Sign In to add comment