Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Filename: P_Supplemental_11.java
- * Created: November 7, 2012
- * Author: Dustin Hunt
- * Purpose: Create a form using a border layout with a FileChooser and two buttons*/
- package p_supplemental_11;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.io.*;
- import javax.swing.*;
- import java.util.*;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- public class P_Supplemental_11 extends JFrame {
- JPanel jpnl1 = new JPanel();
- JPanel southPanel = new JPanel();
- JButton jbtReadFile1 = new JButton("Get Student Names");
- JButton jbtReadFile2 = new JButton("Get Student Grades");
- JTextField jtxtFilePath = new JTextField();
- JLabel jlblDesc = new JLabel("Click a button to open each file!");
- JTextArea jtxtAfileContents = new JTextArea();
- P_Supplemental_11() {
- this.setLayout(new BorderLayout(5, 10));
- jpnl1.setLayout(new GridLayout(2, 2));
- jpnl1.add(jlblDesc);
- //jpnl1.add(jtxtFilePath);
- southPanel.add(jbtReadFile1);
- southPanel.add(jbtReadFile2);
- add(southPanel, BorderLayout.SOUTH);
- add(jpnl1, BorderLayout.NORTH);
- add(jtxtAfileContents, BorderLayout.CENTER);
- jbtReadFile1.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- jbtReadFileActionPerformed(evt);
- }
- });
- jbtReadFile2.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- jbtReadFileActionPerformed2(evt);
- }
- });
- } // end constructor
- class Student {
- private int stuId;
- private String stuName;
- private ArrayList<Double> grades;
- Student(int idIn, String nameIn) {
- this.stuId = idIn;
- this.stuName = nameIn;
- } // end student class
- public int getStuId() {
- return stuId;
- }
- public void setStuId(int stuId) {
- this.stuId = stuId;
- }
- String getStuName() {
- return stuName;
- }
- public void setStuName(String stuName) {
- this.stuName = stuName;
- }
- public ArrayList<Double> getGrades() {
- return grades;
- }
- public void setGrades(ArrayList grades) {
- this.grades = grades;
- }
- } // end class Student
- ArrayList<Student> students = new ArrayList();
- private void jbtReadFileActionPerformed(ActionEvent evt) {
- try {
- JFileChooser fileChooser = new JFileChooser();
- if (fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
- java.io.File file = fileChooser.getSelectedFile();
- Scanner input = new Scanner(file);
- StringBuilder output = new StringBuilder();
- while(input.hasNext()) {
- students.add(new Student(input.nextInt(),input.nextLine()));
- } // end while
- jtxtAfileContents.setText(output.toString());
- input.close();
- } // end if
- }// end action method for jbtReadFile button
- catch (FileNotFoundException ex) {
- Logger.getLogger(P_Supplemental_11.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- private void jbtReadFileActionPerformed2(ActionEvent evt) {
- try {
- JFileChooser fileChooser = new JFileChooser();
- if (fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
- java.io.File file = fileChooser.getSelectedFile();
- Scanner input = new Scanner(file);
- while (input.hasNext()) {
- students.add(new Student(input.nextInt(), input.nextLine()));
- } // end while
- for (int o = 0; o < students.size(); o++) {
- students.get(o).setGrades(collectGrades(students.get(o).getStuId()));
- StringBuilder output = new StringBuilder();
- output.append(students.get(o).getStuId());
- output.append(students.get(o).getStuName());
- output.append(averageGrade(students.get(o).getGrades()));
- jtxtAfileContents.setText(output.toString());
- }
- } // end for
- } // end action method for jbtReadFile button
- catch (FileNotFoundException ex) {
- Logger.getLogger(P_Supplemental_11.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- public static ArrayList<Double> collectGrades(int inId) {
- ArrayList<Double> outGrade = new ArrayList();
- try {
- File inFile = new File("c:/temp/studentScores.txt");
- Scanner input = new Scanner(inFile);
- while (input.hasNext()) {
- int tmpInt = input.nextInt();
- double tmpDbl = input.nextDouble();
- if (tmpInt == inId) {
- outGrade.add(tmpDbl);
- } // end if
- } // end while
- } catch (FileNotFoundException ex) {
- Logger.getLogger(P_Supplemental_11.class.getName()).log(Level.SEVERE, null, ex);
- } // end catch
- return outGrade;
- } // end method
- public static double averageGrade(ArrayList<Double> gradeIn) {
- double outAvg = 0.0;
- for (int y = 0; y < gradeIn.size(); y++) {
- outAvg += gradeIn.get(y);
- } // end for
- return outAvg / gradeIn.size();
- }
- public static void main(String[] args) {
- P_Supplemental_11 frame = new P_Supplemental_11();
- frame.setTitle("P_Supplemenetal_10");
- frame.setSize(410, 520);
- frame.setLocationRelativeTo(null);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setVisible(true);
- } // end main
- } // end public class P_Supp_11
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement