GUARDAR Y ABRIR FICHEROS DE TEXTO
Creamos el proyecto insertando todos los
components; en la opcion edit y richedit
El codigo es el siguiente:
import com.ms.wfc.app.*;
import com.ms.wfc.core.*;
import com.ms.wfc.ui.*;
import com.ms.wfc.html.*;
//Aņadimos esta biblioteca para las clases de entrada y salida
import java.io.*;
/**
* This class can take a variable number of parameters on the command
* line. Program execution begins with the main() method. The class
* constructor is not invoked unless an object of type 'Form1' is
* created in the main() method.
*/
public class Form1 extends Form
{
public Form1()
{
// Required for Visual J++ Form Designer support
initForm();
// TODO: Add any constructor code after initForm call
}
/**
* Form1 overrides dispose so it can clean up the
* component list.
*/
public void dispose()
{
super.dispose();
components.dispose();
}
private void menuItem4_click(Object source, Event e)
{
FileWriter writer;
saveFileDialog1.showDialog();
//Abrimos el fichero para escribir
if(saveFileDialog1.getFileName()!="")
{
try
{
writer= new FileWriter(saveFileDialog1.getFileName()+".txt");
}
catch(IOException io)
{
edit1.setText("Error al abrir el fichero");
return;
}
//Escribimos
try
{
writer.write(edit1.getText());
}
catch(IOException io)
{
edit1.setText("Error al escribir");
}
//cerramos el fichero
try
{
writer.close();
}
catch(IOException io)
{
edit1.setText("Error al cerrar el archivo");
}
}
}
private void menuItem3_click(Object source, Event e)
{
FileReader reader;
openFileDialog1.showDialog();
//Abrimos el fichero para escribir
if(openFileDialog1.getFileName()!="")
{
try
{
reader= new FileReader(openFileDialog1.getFileName());
edit1.setText("");
}
catch(IOException io)
{
edit1.setText("Error al abrir el fichero");
return;
}
//Leemos
char[] buffer=new char[256];
int longitud;
try
{
while((longitud = reader.read(buffer))!=-1)
{
String s = new String(buffer, 0,longitud);
edit1.setText(edit1.getText()+s);
}
}
catch(IOException io)
{
edit1.setText("Error al leer");
}
//cerramos el fichero
try
{
reader.close();
}
catch(IOException io)
{
edit1.setText("Error al cerrar el archivo");
}
}
}
private void menuItem7_click(Object source, Event e)
{
openFileDialog1.showDialog();
if (openFileDialog1.getFileName()!="")
{
richEdit1.saveFile(openFileDialog1.getFileName());
openFileDialog1.setFileName("");
}
}
private void menuItem6_click(Object source, Event e)
{
openFileDialog1.showDialog();
if(openFileDialog1.getFileName()!="")
{
richEdit1.loadFile(openFileDialog1.getFileName());
openFileDialog1.setFileName("");
}
}
private void button1_click(Object source, Event e)
{
colorDialog1.showDialog();
edit1.setBackColor(colorDialog1.getColor());
}
private void button3_click(Object source, Event e)
{
fontDialog1.showDialog();
edit1.setFont(fontDialog1.getFont());
}
private void button2_click(Object source, Event e)
{
colorDialog1.showDialog();
edit1.setForeColor(colorDialog1.getColor());
}
private void button6_click(Object source, Event e)
{
colorDialog1.showDialog();
richEdit1.setBackColor(colorDialog1.getColor());
}
private void button4_click(Object source, Event e)
{
fontDialog1.showDialog();
richEdit1.setSelFont(fontDialog1.getFont());
}
private void button5_click(Object source, Event e)
{
colorDialog1.showDialog();
richEdit1.setSelColor(colorDialog1.getColor());
}
/**
* NOTE: The following code is required by the Visual J++ form
* designer. It can be modified using the form editor. Do not
* modify it using the code editor.
*/
Container components = new Container();
Edit edit1 = new Edit();
RichEdit richEdit1 = new RichEdit();
Button button4 = new Button();
GroupBox groupBox2 = new GroupBox();
MainMenu mainMenu1 = new MainMenu();
OpenFileDialog openFileDialog1 = new OpenFileDialog();
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
MenuItem menuItem1 = new MenuItem();
MenuItem menuItem2 = new MenuItem();
MenuItem menuItem3 = new MenuItem();
MenuItem menuItem4 = new MenuItem();
MenuItem menuItem5 = new MenuItem();
MenuItem menuItem6 = new MenuItem();
MenuItem menuItem7 = new MenuItem();
Button button1 = new Button();
Button button2 = new Button();
Button button3 = new Button();
GroupBox groupBox1 = new GroupBox();
Button button5 = new Button();
Button button6 = new Button();
ColorDialog colorDialog1 = new ColorDialog();
FontDialog fontDialog1 = new FontDialog();
private void initForm()
{
edit1.setLocation(new Point(80, 8));
edit1.setSize(new Point(400, 128));
edit1.setTabIndex(0);
edit1.setText("edit1");
edit1.setMultiline(true);
richEdit1.setFont(Font.DEFAULT_GUI);
richEdit1.setForeColor(Color.WINDOWTEXT);
richEdit1.setLocation(new Point(80, 144));
richEdit1.setSize(new Point(400, 136));
richEdit1.setTabIndex(1);
richEdit1.setText("richEdit1");
button4.setLocation(new Point(0, 48));
button4.setSize(new Point(72, 32));
button4.setTabIndex(2);
button4.setText("Estilo Fuente");
button4.addOnClick(new EventHandler(this.button4_click));
groupBox2.setLocation(new Point(8, 144));
groupBox2.setSize(new Point(72, 112));
groupBox2.setTabIndex(8);
groupBox2.setTabStop(false);
groupBox2.setText("RICHEDIT");
/* @designTimeOnly openFileDialog1.setLocation(new Point(224, 216)); */
/* @designTimeOnly saveFileDialog1.setLocation(new Point(352, 216)); */
menuItem1.setText("Salir");
menuItem3.setText("Abrir");
menuItem3.addOnClick(new EventHandler(this.menuItem3_click));
menuItem4.setText("Guardar");
menuItem4.addOnClick(new EventHandler(this.menuItem4_click));
menuItem2.setMenuItems(new MenuItem[] {
menuItem3,
menuItem4});
menuItem2.setText("Edit");
menuItem6.setText("Abrir");
menuItem6.addOnClick(new EventHandler(this.menuItem6_click));
menuItem7.setText("Guardar");
menuItem7.addOnClick(new EventHandler(this.menuItem7_click));
menuItem5.setMenuItems(new MenuItem[] {
menuItem6,
menuItem7});
menuItem5.setText("RichEdit");
mainMenu1.setMenuItems(new MenuItem[] {
menuItem1,
menuItem2,
menuItem5});
/* @designTimeOnly mainMenu1.setLocation(new Point(128, 216)); */
this.setText("Guardar y abrir fichero de texto");
this.setAutoScaleBaseSize(new Point(5, 13));
this.setClientSize(new Point(485, 289));
this.setMenu(mainMenu1);
button1.setLocation(new Point(0, 16));
button1.setSize(new Point(72, 32));
button1.setTabIndex(0);
button1.setText("Color Fondo");
button1.addOnClick(new EventHandler(this.button1_click));
button2.setLocation(new Point(0, 80));
button2.setSize(new Point(72, 32));
button2.setTabIndex(1);
button2.setText("Color Letra");
button2.addOnClick(new EventHandler(this.button2_click));
button3.setLocation(new Point(0, 48));
button3.setSize(new Point(72, 32));
button3.setTabIndex(2);
button3.setText("Estilo Fuente");
button3.addOnClick(new EventHandler(this.button3_click));
groupBox1.setLocation(new Point(8, 16));
groupBox1.setSize(new Point(72, 112));
groupBox1.setTabIndex(7);
groupBox1.setTabStop(false);
groupBox1.setText("EDIT");
button5.setLocation(new Point(0, 80));
button5.setSize(new Point(72, 32));
button5.setTabIndex(1);
button5.setText("Color Letra");
button5.addOnClick(new EventHandler(this.button5_click));
button6.setLocation(new Point(0, 16));
button6.setSize(new Point(72, 32));
button6.setTabIndex(0);
button6.setText("Color Fondo");
button6.addOnClick(new EventHandler(this.button6_click));
/* @designTimeOnly colorDialog1.setLocation(new Point(128, 248)); */
/* @designTimeOnly fontDialog1.setLocation(new Point(232, 248)); */
this.setNewControls(new Control[] {
groupBox2,
groupBox1,
richEdit1,
edit1});
groupBox2.setNewControls(new Control[] {
button6,
button5,
button4});
groupBox1.setNewControls(new Control[] {
button3,
button2,
button1});
}
/**
* The main entry point for the application.
*
* @param args Array of parameters passed to the application
* via the command line.
*/
public static void main(String args[])
{
Application.run(new Form1());
}
}