Here is my code:-
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package wrie.and.read;
/**
*
* @author Administrator
*/
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.*;
public class WrieAndRead {
JFrame frame;
JTextField field;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new WrieAndRead().go();
}
public void go() {
frame = new JFrame("Let's write AND read!");
JPanel panel = new JPanel();
frame.setContentPane(panel);
panel.setBackground(new Color(234, 190, 78));
field = new JTextField(20);
JButton button = new JButton("Click me to write to a text file!");
JButton button2 = new JButton("Click me to read from a text file!");
panel.add(field);
panel.add(button);
panel.add(button2);
button.addActionListener(new A1());
button.addActionListener(new A2());
frame.setSize(300, 300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class A1 implements ActionListener {
public void actionPerformed(ActionEvent ev) {
try {
FileWriter w1 = new FileWriter("WrittenText.txt");
String s = field.getText();
w1.write(s);
w1.close();
}
catch (Exception ex) { ex.printStackTrace(); }
}
}
private class A2 implements ActionListener {
public void actionPerformed(ActionEvent ev) {
try {
File f = new File("WrittenText.txt");
FileReader r1 = new FileReader(f);
BufferedReader r2 = new BufferedReader(r1);
String st = r2.readLine();
JOptionPane.showMessageDialog(frame, st);
r2.close();
}
catch (Exception ex) { ex.printStackTrace(); }
}
}
}
Here is my exception:-
java.io.FileNotFoundException: WrittenText.txt (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.io.FileReader.<init>(FileReader.java:72)
at wrie.and.read.WrieAndRead$A2.actionPerformed(WrieAndRead.java:57)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
My question:-
Why is this exception coming and how do I solve it?