Skip to Main Content

New to Java

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

"AWT-EventQueue-0" Error

807600May 15 2007 — edited May 16 2007
I get this totally weird error when trying to read some text from a file:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at java.lang.Integer.parseInt(Integer.java:497)
at GradAndUndergrad.actionPerformed(GradAndUndergrad.java:81)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6038)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
at java.awt.Component.processEvent(Component.java:5803)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4410)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2429)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)



This is my code:
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class StudentRead extends JFrame implements ActionListener {
	
	Container con = getContentPane();
	JButton grad = new JButton("Grad");
	JButton undergrad = new JButton("Undergrad");
	JLabel lblID = new JLabel("Student ID: ");
	JLabel lblFName = new JLabel("First Name: ");
	JLabel lblLName = new JLabel("Last Name: ");
	JTextField txtID = new JTextField(10);
	JTextField txtFName = new JTextField(10);
	JTextField txtLName = new JTextField(10);
	File gradFile = new File("Graduate.txt");
	File undergradFile = new File("Undergraduate.txt");
	DataInputStream inGrad;
	DataInputStream inUndergrad;
	
			
	public StudentRead() {
	
		super("Read File");
		
		con.setLayout(new FlowLayout());
		con.add(lblID);
		con.add(txtID);
		con.add(lblFName);
		con.add(txtFName);
		con.add(lblLName);
		con.add(txtLName);
		con.add(grad);
		con.add(undergrad);
		grad.addActionListener(this);
		undergrad.addActionListener(this);
		
		try {
			
			inGrad = new DataInputStream(new FileInputStream(gradFile));
		
		}
		
		catch(FileNotFoundException z) {
			
			System.out.println("File Not Found.");
		
		}
		
		try {
			
			inUndergrad =  new DataInputStream(new FileInputStream(undergradFile));
		
		}
		
		catch(FileNotFoundException z) {
			
			System.out.println("File Not Found");
		
		}
		
	}
	
	public void actionPerformed(ActionEvent e) {
		
		Object source = e.getSource();
			
		if(source == grad) {
				
			try {
				
				int txtID1 = inGrad.readInt();
				String txtFName1 = inGrad.readUTF();
				String txtLName1 = inGrad.readUTF();
				txtFName.setText(txtFName1);
				txtLName.setText(txtLName1);
				txtID.setText(String.valueOf(txtID1));
			}
			
			catch(IOException f) {
				
				System.out.println("Error");
			}
		}
		
		else {
			
			try {
				
				int txtID1 = inUndergrad.readInt();
				String txtFName1 = inUndergrad.readUTF();
				String txtLName1 = inUndergrad.readUTF();
				txtFName.setText(txtFName1);
				txtLName.setText(txtLName1);
				txtID.setText(String.valueOf(txtID1));

			}
			
			catch(IOException f) {
				
				System.out.println("Error");
			
			}
		}	
	}
		
	
	public static void main(String[] args) {
		
		GradAndUndergrad g1 = new GradAndUndergrad();
		g1.setVisible(true);
		g1.setSize(200,400);
		g1.setDefaultCloseOperation(EXIT_ON_CLOSE);
	
	}
}
				
		
	
	
	
	
This happens when i push the "Grad" or "Undergrad" button, which technically should then read the information from the appropriate file. Both files are in the directory, and do have information in them, they were created by a modified version of this :
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class GradAndUndergrad extends JFrame implements ActionListener {
	
	Container con = getContentPane();
	JButton grad = new JButton("Grad");
	JButton undergrad = new JButton("Undergrad");
	JLabel lblID = new JLabel("Student ID: ");
	JLabel lblFName = new JLabel("First Name: ");
	JLabel lblLName = new JLabel("Last Name: ");
	JTextField txtID = new JTextField(10);
	JTextField txtFName = new JTextField(10);
	JTextField txtLName = new JTextField(10);
	File gradFile = new File("Graduate.txt");
	File undergradFile = new File("Undergraduate.txt");
	DataOutputStream outGrad;
	DataOutputStream outUndergrad;
	
			
	public GradAndUndergrad() {
	
		super("Create a Student");
		
		con.setLayout(new FlowLayout());
		con.add(lblID);
		con.add(txtID);
		con.add(lblFName);
		con.add(txtFName);
		con.add(lblLName);
		con.add(txtLName);
		con.add(grad);
		con.add(undergrad);
		grad.addActionListener(this);
		undergrad.addActionListener(this);
		
		try {
			
			outGrad = new DataOutputStream(new FileOutputStream(gradFile));
		
		}
		
		catch(FileNotFoundException z) {
			
			System.out.println("File not found");
		
		}
		
		try {
			
			outUndergrad =  new DataOutputStream(new FileOutputStream(undergradFile));
		
		}
		
		catch(FileNotFoundException z) {
			
			System.out.println("File not found");
		
		}
		
	}
	
	public void actionPerformed(ActionEvent e) {
		
		Object source = e.getSource();
			
		if(source == grad) {
				
			try {
				
				int sID = Integer.parseInt(txtID.getText());
				outGrad.writeUTF(txtFName.getText());
				outGrad.writeUTF(txtLName.getText());
			}
			
			catch(IOException f) {
				
				System.out.println("Error");
			}
		}
		
		else {
			
			try {
				
				int sID = Integer.parseInt(txtID.getText());
				outUndergrad.writeInt(sID);
				outUndergrad.writeUTF(txtFName.getText());
				outUndergrad.writeUTF(txtLName.getText());

			}
			
			catch(IOException f) {
				
				System.out.println("Error");
			
			}
		}	
	}
		
	
	public static void main(String[] args) {
		
		GradAndUndergrad g1 = new GradAndUndergrad();
		g1.setVisible(true);
		g1.setSize(200,400);
		g1.setDefaultCloseOperation(EXIT_ON_CLOSE);
	
	}
}
				
		
	
	
	
	
So yep, i'm clueless to why this is happening
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 13 2007
Added on May 15 2007
5 comments
322 views