import javax.swing.filechooser.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
public class WriteSimpleFile {
   /**
	 * use a dialog box to select a text file (.txt)
	 * @return a PrintStream for the selected file, or null if cancel selected
	 */
   public static PrintStream selectTextFile() {
	   do {
	      JFileChooser chooser = new JFileChooser();
         FileNameExtensionFilter filter = new FileNameExtensionFilter(
            "Text/Java files", "txt", "java");
         chooser.setFileFilter(filter);
         int returnVal = chooser.showSaveDialog(null);
			try {
            if(returnVal == JFileChooser.APPROVE_OPTION) {
		         return new PrintStream(chooser.getSelectedFile());
            } 
   		   else {
		         return null;
			   }
			}
			catch (FileNotFoundException e) {
			   JOptionPane.showMessageDialog(null, "Invalid file!",
				   "error", JOptionPane.ERROR_MESSAGE); 
			}
		} while (true);
	}

   public static void main(String[] args) {
	   // make Java look like your normal OS
		try {
		   UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
		}
		catch (Exception e) { // ignore exceptions and continue
		}
	   PrintStream outputStream = WriteSimpleFile.selectTextFile();
		if (outputStream!=null) {
	   	outputStream.println("Falling to the ground,");
         outputStream.println("I watch a leaf settle down");
         outputStream.println("In a bed of brown.");
		   outputStream.close();
		}
	}
}