import java.io.*;

import javax.microedition.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class FileTest extends MIDlet
	implements CommandListener
{
	private Display mDisplay;
	private Command mExitCommand;
	private TextBox mTextBox;

	public FileTest()
	{
		mExitCommand = new Command("Exit", Command.EXIT, 0);

		mTextBox = new TextBox("FileTest", "", 128, 0);
		mTextBox.addCommand(mExitCommand);
		mTextBox.setCommandListener(this);
	}


	public void commandAction(Command c, Displayable s)
	{
			destroyApp(false);
			notifyDestroyed();
	}

	public void startApp() {
	  mDisplay = Display.getDisplay(this);
	  mDisplay.setCurrent(mTextBox);

	  mTextBox.setString("Version: "+System.getProperty("microedition.io.file.FileConnection.version"));
	  try
	  {
 Thread.sleep(2000); 
 OutputStream os = ((javax.microedition.io.OutputConnection)Connector.open("file:///menneisyys.txt", Connector.WRITE)).openOutputStream();
 os.write(63);
 os.flush();
 os.close();
 InputStream is = ((javax.microedition.io.InputConnection)Connector.open("file:///menneisyys.txt", Connector.READ)).openInputStream();
 int i = is.read();
 is.close();
 mTextBox.setString("Byte read back: "+i);
	  }
	  catch (Exception e) 	  { mTextBox.setString("Exc: "+e+"\n\n"); }
  }

  // implementing abstract methods:
  public void pauseApp() {}
  public void destroyApp(boolean unconditional) {}
}