Jump to content
pedro_15

Editor de texto ,duvida

Recommended Posts

pedro_15

Boas noites,

Estou fazendo um editor de texto em java...

So que o programa não esta correndo porque esta dando erros, no codigo que eu meti a preto e a negrito.

Se me puderem ajudar a resolve-los agradeço

package documentarium;

import java.awt.*;
import java.awt.event.*;
import java.io.*;

[b]public class Cap125 extends Frame {[/b]

// Declaração de constantes

        private final static int dimH = 300;
        private final static int dimV = 300;

        // Atributo

        GUI gui = new GUI (this); // Objecto de interface

//Método para fazer operação (leitura / escrita)

public void fazOperacao (ActionEvent e) {

        gui.fazOperacao (e);

}

public static void main (String[] args){

        Frame f = new Cap125 (); // Cria janela
        f.setSize (dimH, dimV);  // Define dimensões
        f.setTitle ("Leitura e escrita de ficheiros"); // Define título

        f.addWindowListener (new GereJanela()); // Junta gestor de encerramento de aplicação

        f.show(); // Mostra janela

}

}

class GUI {

// Declaração de constantes

        private final static String s = "Ficheiros";
        private final static int txtLinhas = 10;
        private final static int txtColunas = 30;

        // Atributos

        private Button le, grava;
        private TextArea texto;
        private Cap125 frame;
        private GereEventos gE1, gE2; // Objectos gestores de eventos

GUI (Cap125 f){

        le = new Button("Lê"); // Cria botões
        grava = new Button("Grava");

        texto = new TextArea (txtLinhas, txtColunas); // Cria zona de texto

        frame = f;

        gE1 = new GereEventos (f); // Cria gestores de eventos
        gE2 = new GereEventos (f);

        frame.setLayout (new FlowLayout()); // Define Layout

        frame.add (le); // Junta elementos à applet
        frame.add (grava);
        frame.add (texto);

        le.addActionListener (gE1); // Junta gestores de eventos
        grava.addActionListener (gE2);

}

//Método para determinar qual o botão premido
//Recebe:
//  e - evento
//Devolve:
//  true se botão lê, false se botão grava

public boolean getButton (ActionEvent e) {

        if (e.getSource ().equals (le)) return true;
        else return false;
}

//Método para fazer operação (leitura / escrita)
//Recebe:
//  e - evento

public void fazOperacao (ActionEvent e) {

FileDialog caixa;
String nome;
boolean leitura = getButton (e);

        if (leitura) caixa = new FileDialog (frame, s, FileDialog.LOAD); // Cria caixa de diálogo
        else caixa = new FileDialog (frame, s, FileDialog.SAVE);

        caixa.show (); // mostra caixa

        nome = caixa.getFile (); // obtém nome do ficheiro

        if (nome != null) // Se nome válido

                if (leitura) leTexto (nome); // faz operação (leitura / escrita)
                else gravaTexto (nome);

}

//Método para ler um ficheiro
//Recebe:
//  nome - do ficheiro a ler

void leTexto (String nome) {

String l;

        try {

       [b]         FicheiroDeTexto f = new FicheiroDeTexto(); // Cria ficheiro ----------> Cannot Find Symbol; symbol: class FicheiroDeTexto; location: class documentarium.GUI

                f.abreLeitura (nome); // Abre ficheiro

                texto.setText (""); // Apaga texto anterior que esteja visível na área de texto

                while ((l = f.lerLinha()) != null) { // Lê linha

                        texto.append (l+"\n"); // Junta-a a área de texto

                }

                f.fechaLeitura(); // Fecha ficheiro

        }

        // Trata excepções

      [b]  catch (FileNotFoundException e) {

                        System.out.println("Ficheiro inexistente! ");
        }

  [b]      catch (IOException e) {

                        System.out.println("Erro de IO! ");
        }

}

//Método para gravar um ficheiro
//Recebe:
//  nome - do ficheiro a gravar

void gravaTexto (String nome) {

        try {

                FicheiroDeTexto f = new FicheiroDeTexto(); // Cria ficheiro ----------> Cannot Find Symbol; symbol: class FicheiroDeTexto; location: class documentarium.GUI

                f.abreEscrita (nome); //Abre ficheiro

                f.escreverLinha (texto.getText ()); // escreve texto

                f.fechaEscrita (); // Fecha ficheiro
        }

        // Trata excepção

        catch (IOException e) {

                        System.out.println("Erro de IO! ");
        }


}

}

class GereEventos implements ActionListener {

        // Atributo

        private Cap125 frame;

// Construtor

GereEventos (Cap125 f) {

        frame = f;

}

public void actionPerformed (ActionEvent e){

        frame.fazOperacao (e);

}

}

class GereJanela extends WindowAdapter {

//Método para terminar aplicação
//Recebe:
//  e - evento de fecho de aplicação

public void windowClosing (WindowEvent e){

        System.exit(0); // Termina aplicação
}

}

Share this post


Link to post
Share on other sites
pedro_15

package documentarium;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

public class Cap125 extends Frame {      >AQUI DA ERRO

// Declaração de constantes

        private final static int dimH = 300;

        private final static int dimV = 300;

        // Atributo

        GUI gui = new GUI (this); // Objecto de interface

//Método para fazer operação (leitura / escrita)

public void fazOperacao (ActionEvent e) {

        gui.fazOperacao (e);

}

public static void main (String[] args){

        Frame f = new Cap125 (); // Cria janela

        f.setSize (dimH, dimV);  // Define dimensões

        f.setTitle ("Leitura e escrita de ficheiros"); // Define título

        f.addWindowListener (new GereJanela()); // Junta gestor de encerramento de aplicação

        f.show(); // Mostra janela

}

}

class GUI {

// Declaração de constantes

        private final static String s = "Ficheiros";

        private final static int txtLinhas = 10;

        private final static int txtColunas = 30;

        // Atributos

        private Button le, grava;

        private TextArea texto;

        private Cap125 frame;

        private GereEventos gE1, gE2; // Objectos gestores de eventos

GUI (Cap125 f){

        le = new Button("Lê"); // Cria botões

        grava = new Button("Grava");

        texto = new TextArea (txtLinhas, txtColunas); // Cria zona de texto

        frame = f;

        gE1 = new GereEventos (f); // Cria gestores de eventos

        gE2 = new GereEventos (f);

        frame.setLayout (new FlowLayout()); // Define Layout

        frame.add (le); // Junta elementos à applet

        frame.add (grava);

        frame.add (texto);

        le.addActionListener (gE1); // Junta gestores de eventos

        grava.addActionListener (gE2);

}

//Método para determinar qual o botão premido

//Recebe:

//  e - evento

//Devolve:

//  true se botão lê, false se botão grava

public boolean getButton (ActionEvent e) {

        if (e.getSource ().equals (le)) return true;

        else return false;

}

//Método para fazer operação (leitura / escrita)

//Recebe:

//  e - evento

public void fazOperacao (ActionEvent e) {

FileDialog caixa;

String nome;

boolean leitura = getButton (e);

        if (leitura) caixa = new FileDialog (frame, s, FileDialog.LOAD); // Cria caixa de diálogo

        else caixa = new FileDialog (frame, s, FileDialog.SAVE);

        caixa.show (); // mostra caixa

        nome = caixa.getFile (); // obtém nome do ficheiro

        if (nome != null) // Se nome válido

                if (leitura) leTexto (nome); // faz operação (leitura / escrita)

                else gravaTexto (nome);

}

//Método para ler um ficheiro

//Recebe:

//  nome - do ficheiro a ler

void leTexto (String nome) {

String l;

        try {

                FicheiroDeTexto f = new FicheiroDeTexto(); // Cria ficheiro ----------> Cannot Find Symbol; symbol: class FicheiroDeTexto; location: class documentarium.GUI

                f.abreLeitura (nome); // Abre ficheiro

                texto.setText (""); // Apaga texto anterior que esteja visível na área de texto

                while ((l = f.lerLinha()) != null) { // Lê linha

                        texto.append (l+"\n"); // Junta-a a área de texto

                }

                f.fechaLeitura(); // Fecha ficheiro

        }

        // Trata excepções

        catch (FileNotFoundException e) {  >AQUI DA ERRO

                        System.out.println("Ficheiro inexistente! ");

        }

        catch (IOException e) {   >AQUI DA ERRO

                        System.out.println("Erro de IO! ");

        }

}

//Método para gravar um ficheiro

//Recebe:

//  nome - do ficheiro a gravar

void gravaTexto (String nome) {

        try {

                FicheiroDeTexto f = new FicheiroDeTexto(); // Cria ficheiro ----------> Cannot Find Symbol;    >AQUI DA ERRO 

symbol: class FicheiroDeTexto; location: class documentarium.GUI      >AQUI DA ERRO

                f.abreEscrita (nome); //Abre ficheiro

                f.escreverLinha (texto.getText ()); // escreve texto

                f.fechaEscrita (); // Fecha ficheiro

        }

        // Trata excepção

        catch (IOException e) {    <AQUI DA ERRO

                        System.out.println("Erro de IO! ");

        }

}

}

class GereEventos implements ActionListener {

        // Atributo

        private Cap125 frame;

// Construtor

GereEventos (Cap125 f) {

        frame = f;

}

public void actionPerformed (ActionEvent e){

        frame.fazOperacao (e);

}

}

class GereJanela extends WindowAdapter {

//Método para terminar aplicação

//Recebe:

//  e - evento de fecho de aplicação

public void windowClosing (WindowEvent e){

        System.exit(0); // Termina aplicação

}

}

A frente do codigo escrevi onde esta os erros a negrito.

Se puderem ajudar agradeço

Share this post


Link to post
Share on other sites
Knitter

"Aqui dá erro" não ajuda muito, se dá erro sabes qual é a mensagem, no mínimo ajuda colocares aqui a mensagem exacta do erro.

Os erros de "Cannot Find Symbol" são motivados por classes que não existem ou imports que não estão a ser feitos. Portanto, nestes casos confirma se a classe existe, se tem o mesmo nome que o ficheiro onde está guarda e se ela mesmo não tem erros.

Nas linhas de tratamento das excepções não dizes que erro é, pode ser desde uma classe que não está a ser encontrada até uma excepção que nunca é lançada.

Share this post


Link to post
Share on other sites
Knitter

Eu até compreendo que possa ser complicado estar a fazer esse tipo de alterações, e consigo perceber que por vezes estes pequenos problemas dão cabo da paciência e vontade em pegar no código. Até consigo entender que estejas frustrado com os erros, mas se tens disponibilidade para comentar dessa forma em vez de colocares os erros que te estão a impedir de progredir é porque, certamente, não precisas de ajuda no projecto pelo que irei aplicar o meu tempo em quem possa estar a precisar verdadeiramente de ajuda.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.