
How to create a save and open jmenu item in java desktop application.

Here is a simple JMenuItem example in java swing through which you can perform open and save operations on File.
import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
public class SwingMenu{
final JTextArea txtArea=new JTextArea(0,0);
JFrame frame = new JFrame();
String Filename;
String filename;
public static void main(String[] args) {
SwingMenu s = new SwingMenu();
}
void ReadFile()
{
BufferedReader d;
StringBuffer sb = new StringBuffer();
try
{
d = new BufferedReader(new FileReader(filename));
String line;
while((line=d.readLine())!=null)
sb.append(line + "\n");
txtArea.setText(sb.toString());
d.close();
}
catch(FileNotFoundException fe)
{
System.out.println("File not Found");
}
catch(IOException ioe){}
}
public SwingMenu(){
JScrollPane scroll=new JScrollPane(txtArea);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menubar = new JMenuBar();
JMenu filemenu = new JMenu("File");
JMenuItem fileItem1 = new JMenuItem("Open");
JMenuItem fileItem2 = new JMenuItem("Save");
filemenu.add(fileItem1);
filemenu.add(fileItem2);
menubar.add(filemenu);
fileItem1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
FileDialog fd = new FileDialog(frame, "select File",FileDialog.LOAD);
fd.show();
if (fd.getFile()!=null)
{
filename = fd.getDirectory() + fd.getFile();
frame.setTitle(filename);
ReadFile();
}
txtArea.requestFocus();
}
});
fileItem2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
FileDialog fd = new FileDialog(frame,"Save File",FileDialog.SAVE);
fd.show();
if (fd.getFile()!=null)
{
filename = fd.getDirectory() + fd.getFile();
frame.setTitle(filename);
try
{
DataOutputStream d = new DataOutputStream(new FileOutputStream(filename));
String line = txtArea.getText();
BufferedReader br = new BufferedReader(new StringReader(line));
while((line = br.readLine())!=null)
{
d.writeBytes(line + "\r\n");
}
d.close();
}
catch(Exception ex)
{
System.out.println("File not found");
}
txtArea.requestFocus();
}
}
});
frame.setJMenuBar(menubar);
frame.add(txtArea);
frame.setSize(400,400);
frame.setVisible(true);
}
}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.