try this, this may help you.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
class NotePad
{
JFrame mainFrame;
JMenuBar menuBar;
JMenu file, edit, format, view, help;
JMenuItem finew, open, save, saveAs, pageSetup, print, exit;
JMenuItem undo, cut, copy, paste, delete, find, findNext, replace, goTo, selectAll, timeDate;
JMenuItem wordRap, font;
JMenuItem statusBar;
JMenuItem helpTopics, aboutSandeepsNotepad;
JScrollPane scrollPane;
JTextArea textArea;
JFileChooser fileChooser;
File f;
NotePad(
String s)
{
mainFrame = new JFrame(s+" - Notepad");
menuBar = new JMenuBar();
file = new JMenu("File");
edit = new JMenu("Edit");
format = new JMenu("Format");
view = new JMenu("View");
help = new JMenu("Help");
finew = new JMenuItem("New");
open = new JMenuItem("Open...");
save = new JMenuItem("Save");
saveAs = new JMenuItem("Save As...");
pageSetup = new JMenuItem("Page Setup...");
print = new JMenuItem("Print...");
exit = new JMenuItem("Exit");
undo = new JMenuItem("Undo");
cut = new JMenuItem("Cut");
copy = new JMenuItem("Copy");
paste = new JMenuItem("Paste");
delete = new JMenuItem("Delete");
find = new JMenuItem("Find...");
findNext = new JMenuItem("Find Next");
replace = new JMenuItem("Replace...");
goTo = new JMenuItem("Go To...");
selectAll = new JMenuItem("Select All");
timeDate = new JMenuItem("Time//Date");
wordRap = new JMenuItem("Word Wrap");
font = new JMenuItem("Font...");
statusBar = new JMenuItem("Status Bar");
helpTopics = new JMenuItem("Help Topics");
aboutSandeepsNotepad = new JMenuItem("About Sandeeps Notepad");
textArea = new JTextArea();
scrollPane = new JScrollPane(textArea);
f = new File("C://Program Files//Java//jdk1.6.0//bin//");
fileChooser = new JFileChooser(f);
file.add(finew);
file.add(open);
file.add(save);
file.add(saveAs);
file.addSeparator();
file.add(pageSetup);
file.add(print);
file.addSeparator();
file.add(exit);
edit.add(undo);
edit.addSeparator();
edit.add(cut);
edit.add(copy);
edit.add(paste);
edit.add(delete);
edit.addSeparator();
edit.add(find);
edit.add(findNext);
edit.add(replace);
edit.add(goTo);
edit.addSeparator();
edit.add(selectAll);
edit.add(timeDate);
menuBar.add(file);
menuBar.add(edit);
menuBar.add(format);
menuBar.add(view);
menuBar.add(help);
format.add(wordRap);
format.add(font);
view.add(statusBar);
help.add(helpTopics);
help.addSeparator();
help.add(aboutSandeepsNotepad);
mainFrame.add(menuBar,BorderLayout.NORTH);
mainFrame.add(scrollPane, BorderLayout.CENTER);
mainFrame.setSize(760,540);
mainFrame.setVisible(true);
Open op = new Open(this);
open.addActionListener(op);
Save sa = new Save(this);
save.addActionListener(sa);
SaveAs saas = new SaveAs(this);
saveAs.addActionListener(saas);
Exit ex = new Exit(this);
exit.addActionListener(ex);
}
public static void main(String[] args)
{
new NotePad("Untitled");
}
}
class Open implements ActionListener
{
NotePad op;
Open(NotePad op)
{
this.op = op;
}
public void actionPerformed(ActionEvent e)
{
int returnVal = op.fileChooser.showOpenDialog(op.mainFrame);
try
{
File file = op.fileChooser.getSelectedFile();
FileInputStream fin = new FileInputStream(file);
DataInputStream din = new DataInputStream(fin);
String s = "";
if (returnVal == op.fileChooser.APPROVE_OPTION)
{
while(s != null)
{
s = din.readLine();
System.out.println(s);
op.textArea.append(s+"\n");
//ba.textArea.setText(s);
}
}
else if(returnVal != op.fileChooser.APPROVE_OPTION)
{
System.out.println("Saving Canceled");
}
System.out.println("returnVal = "+returnVal+" and ba.fileChooser.APPROVE_OPTION = "+op.fileChooser.APPROVE_OPTION);
fin.close();
}
catch (Exception ex)
{
}
}
}
class Save implements ActionListener
{
NotePad sa;
Save(NotePad sa)
{
this.sa = sa;
}
public void actionPerformed(ActionEvent e)
{
int returnVal = sa.fileChooser.showSaveDialog(sa.mainFrame);
try
{
File file = sa.fileChooser.getSelectedFile();
String name = file.toString();
FileOutputStream fout = new FileOutputStream(name, false);
if (returnVal == sa.fileChooser.APPROVE_OPTION)
{
fout.write(("________________________________________HEADER______________________________________________\n").getBytes());
fout.write(("\""+sa.f.getPath()+"\" is "+String.valueOf((sa.f.isFile())?"":"not")+" a file, ").getBytes());
fout.write(("but is "+String.valueOf((sa.f.isDirectory())?"":"not")+" a directory. ").getBytes());
fout.write(("And is last modified at: "+String.valueOf(sa.f.lastModified())).getBytes());
fout.write(("\n______________________________________ CONTENT ______________________________________________\n").getBytes());
fout.write(("\n"+sa.textArea.getText()).getBytes());
}
else if(returnVal != sa.fileChooser.APPROVE_OPTION)
{
System.out.println("Saving Canceled");
}
System.out.println("returnVal = "+returnVal+" and ba.fileChooser.APPROVE_OPTION = "+sa.fileChooser.APPROVE_OPTION);
fout.close();
}
catch (Exception ex)
{
}
}
}
class SaveAs implements ActionListener
{
NotePad saas;
SaveAs(NotePad saas)
{
this.saas = saas;
}
public void actionPerformed(ActionEvent e)
{
int returnVal = saas.fileChooser.showDialog(saas.mainFrame, "Save As...");
try
{
File file = saas.fileChooser.getSelectedFile();
String name = file.toString();
FileOutputStream fout = new FileOutputStream(name, true);
if (returnVal == saas.fileChooser.APPROVE_OPTION)
{
fout.write(("________________________________________HEADER______________________________________________\n").getBytes());
fout.write(("\""+saas.f.getPath()+"\" is "+String.valueOf((saas.f.isFile())?"":"not")+" a file, ").getBytes());
fout.write(("but is "+String.valueOf((saas.f.isDirectory())?"":"not")+" a directory. ").getBytes());
fout.write(("And is last modified at: "+String.valueOf(saas.f.lastModified())).getBytes());
fout.write(("\n______________________________________ CONTENT ______________________________________________\n").getBytes());
fout.write(("\n"+saas.textArea.getText()).getBytes());
}
else if(returnVal != saas.fileChooser.APPROVE_OPTION)
{
System.out.println("Saving Canceled");
}
System.out.println("returnVal = "+returnVal+" and ba.fileChooser.APPROVE_OPTION = "+saas.fileChooser.APPROVE_OPTION);
fout.close();
}
catch (Exception ex)
{
}
}
}
class Exit implements ActionListener
{
NotePad ex;
Exit(NotePad ex)
{
this.ex = ex;
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == ex.exit)
{
System.exit(0);
}
}
}