Bloco de notas

Publicado por leandro melchior de souza 18/07/2007

[ Hits: 17.621 ]

Download Principal.java




Este é um bloco de nota simples que salva um arquivo e abre um arquivo texto.

  



Esconder código-fonte

/**
 *
 * @author leandro melchior de souza
 * email: lemsouza@gmail.com
 */

import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintStream;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;


public class Principal extends JFrame{
   
   public static String nomeaq = " ";
   
   private final JDesktopPane tela = new JDesktopPane();
   JTextArea folha; 
   
   public Principal(){
        //chama metodo construtor da classe JFrame
        super("Bloco de notas"+nomeaq);
        this.MontaJanela();
      }
   
   private void MontaJanela(){
      
      add(tela);
      
      JMenuBar menuB = new JMenuBar();
      JMenu menu = new JMenu("Arquivo");
      JMenuItem abrir = new JMenuItem("abrir");
      JMenuItem salvar = new JMenuItem("salvar");
      JMenuItem sair = new JMenuItem("Sair");
      
      menu.add(abrir);
      menu.add(salvar);
      menu.add(sair);
      menuB.add(menu);
      setJMenuBar(menuB);
      
      folha = new JTextArea(300,400);
      JScrollPane bb= new JScrollPane(folha);
      add(bb);
      
      /* Aqui é adicionado as funções do menu*/      
      
      /*inseri o evento para sair do programa*/
      sair.addActionListener( 
                new ActionListener(){
                    public void actionPerformed(ActionEvent evento){
                           System.exit(0);
                    }
               
                }
      );
      
      /*inseri o evento para salvar do programa*/
      salvar.addActionListener( 
                new ActionListener(){
                    public void actionPerformed(ActionEvent evento){
                       salvar(JOptionPane.showInputDialog(null,"Entre com o nome do arquivo"));
                    }

               
                }
      );
      /*inseri o evento para abrir do programa*/
      abrir.addActionListener( //permite que uma acao seja executada qdo o item é selecionado
                new ActionListener(){
                    public void actionPerformed(ActionEvent evento){
                       try {
                     abrir(JOptionPane.showInputDialog("Entre com o nome do arquivo"));
                  } catch (HeadlessException e) {
                     // TODO Auto-generated catch block
                     e.printStackTrace();
                  } catch (IOException e) {
                     // TODO Auto-generated catch block
                     e.printStackTrace();
                  }            
               }   
                }
          );
      
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      
      
   }
   
    /*Cria um novo arquivo texto e salva*/
    public void salvar (String nome){
       try {
         FileOutputStream arq = new FileOutputStream(nome);
         PrintStream Saida = new PrintStream(arq); 
         Saida.print(folha.getText());
         nomeaq=nome;
      } catch (FileNotFoundException e) {
         JOptionPane.showMessageDialog(null, "Falha");
         
      }
       
    }
    
    public void abrir(String nome) throws HeadlessException, IOException {
              folha.setText(" ");      
              String txt = "";
              BufferedReader in = null;
            try {
               /*carrega o arquivo especificado pelo nome*/
               in = new BufferedReader(new FileReader(nome));
            } catch (FileNotFoundException e) {
               JOptionPane.showMessageDialog(null, "Falha ao ler o arquivo "+ nome);
            }
              
              
              while(in.readLine() != null){
                 /* le linha a linha até o final que e apontado com o 
                 retorno null da função readLine que pode fazer com que o arquivo nao seja
                  lido ate o final
                 */
                 txt = txt + in.readLine()+"\n";// concatena cada linha em txt
              }
              this.setTitle("Bloco de nota - "+nome); //coloca o titulo do arquivo na tela
              folha.setText(txt);//imprime texto lido na tela

       }
   
    public static void main(String[] args){
          //Cria objeto:
         Principal janela = new Principal();
          janela.setSize(800,600);
          janela.setVisible(true);
      }
    
   
}

Scripts recomendados

Ler arquivo e remover Strings duplicadas

Microssistema de controle de compras

Editor de Textos Java

ImagemFacil 1.0, um editor de imagens recheado de recursos

Utilizando a classe File


  

Comentários
[1] Comentário enviado por fbalduino em 28/07/2008 - 14:59h

valeu amigo! estou começando em java e esse código vai me ajudar um bocado a saber como tratar I/O e janelas

[2] Comentário enviado por andrezc em 21/07/2009 - 21:43h

Muito bom, gostei, só faltou utilizar mais um

JMenuBar menuB = new JMenuBar();
JMenu menu = new JMenu("Ajuda");
JMenuItem Tópicos de ajuda = new JMenuItem("Tópicos de ajuda");
JMenuItem creditos = new JMenuItem("Creditos");

[3] Comentário enviado por davidsiqueira em 01/12/2013 - 02:59h

cara gostei eu aprendi ate cria virus pelo bloco de nota.

[4] Comentário enviado por davidsiqueira em 01/12/2013 - 03:03h

a outra digta isso no google que vc vai acha bastante camara de segurança espalhada na net: inurl:view/index.shtml.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts