• No se han encontrado resultados

DPO3_U1_EA_JUGG (2)

N/A
N/A
Protected

Academic year: 2021

Share "DPO3_U1_EA_JUGG (2)"

Copied!
16
0
0

Texto completo

(1)

Universidad Abierta y a

Distancia de México

PROGRAMACION ORIENTADA A OBJETOS 3

“Evidencia de Aprendizaje Unidad 1: Programa de

Archivos"

Grupo DS-DPO3-1701-B2-001

Docente: Guillermo Hernández Garcia

Juan Antonio Galindo Guerra

(2)

Evidencia de Aprendizaje. Programa de Archivos

Propósito:

Desarrollar un programa que permita la creación, lectura, escritura, renombrado y eliminación de archivos.

Instrucciones:

1) Desarrolla un programa en java que permita la creación, lectura, escritura, renombrado y eliminación de archivos.

2) Al finalizar, guarda la actividad con la nomenclatura DPO3_U1_EA_XXYZ. Sustituye las XX por las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por tu segundo apellido. 3) Envía la actividad a tu Docente en línea mediante el Portafolio de evidencias para recibir retroalimentación. Espera y atiende la retroalimentación correspondiente.

Introducción:

Para esta actividad decidí enriquecer mi programa agregando una nueva clase para el renombramiento de archivos y un botón en el formulario principal para la eliminación de archivos tambien

Código:

package dpo3_u1_ea;

//importacion de librerias utilizadas import java.awt.BorderLayout; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.*; import java.io.File; import javax.swing.JFileChooser; import java.io.FileWriter; import java.io.FileReader; import java.io.BufferedReader; import java.io.BufferedWriter;

(3)

import java.io.IOException; import java.io.PrintWriter; import java.util.logging.Level; import java.util.logging.Logger; public class U1_EA {

//Se define la apariencia total del formulario

public static void main(String[] args) throws IOException{

new apariencia(); }

//Clase Apariencia

private static class apariencia { public apariencia()

{

//Se crean los componenetes graficos //Creacion de Etiquetas

JPanel pnlEtiquetas = new javax.swing.JPanel(); JLabel nombre= new javax.swing.JLabel(); JLabel genero= new javax.swing.JLabel(); JLabel desarrollador= new javax.swing.JLabel(); JLabel año= new javax.swing.JLabel();

JLabel plataforma= new javax.swing.JLabel(); JLabel consulta= new javax.swing.JLabel();

//Panel de Etiquetas nombre.setText("Nombre");

nombre.setFont( new Font("TimesRoman",Font.PLAIN,17)); genero.setText("Genero");

genero.setFont( new Font("TimesRoman",Font.PLAIN,17)); desarrollador.setText("Desarrollador");

desarrollador.setFont( new Font("TimesRoman",Font.PLAIN,17)); año.setText("Año");

año.setFont( new Font("TimesRoman",Font.PLAIN,17)); plataforma.setText("Plataforma");

plataforma.setFont( new Font("TimesRoman",Font.PLAIN,17)); consulta.setText("Consulta");

(4)

consulta.setFont( new Font("TimesRoman",Font.PLAIN,17));

//Se agregan las etiquetas al panel

pnlEtiquetas.setLayout(new BoxLayout(pnlEtiquetas,BoxLayout.Y_AXIS)); pnlEtiquetas.add(nombre); pnlEtiquetas.add(genero); pnlEtiquetas.add(desarrollador); pnlEtiquetas.add(año); pnlEtiquetas.add(plataforma); pnlEtiquetas.add(consulta);

//Creacion de cajas de Texto

JPanel pnlTextField = new javax.swing.JPanel();

JTextField txtPlataforma = new javax.swing.JTextField(); txtPlataforma.setText("");

JTextField txtGenero = new javax.swing.JTextField(); txtGenero.setText("");

JTextField txtDesarrollador = new javax.swing.JTextField(); txtDesarrollador.setText("");

JTextField txtAño = new javax.swing.JTextField(); txtAño.setText("");

JTextField txtNombre = new javax.swing.JTextField(); txtNombre.setText("");

JTextField txtConsulta = new javax.swing.JTextField(); txtConsulta.setText("");

//Panel de cajas de Texto

pnlTextField.setLayout(new BoxLayout(pnlTextField,BoxLayout.Y_AXIS)); pnlTextField.add(txtNombre); pnlTextField.add(txtGenero); pnlTextField.add(txtDesarrollador); pnlTextField.add(txtAño); pnlTextField.add(txtPlataforma); pnlTextField.add(txtConsulta); //Creacion de Botones

(5)

JButton btnGuardar = new javax.swing.JButton(); JButton btnCancelar = new javax.swing.JButton(); JButton btnConsulta = new javax.swing.JButton(); JButton btnRenombrar = new javax.swing.JButton(); JButton btnEliminar = new javax.swing.JButton();

//Apariencia de los Botones btnGuardar.setText("Guardar"); btnGuardar.setMnemonic('G'); btnCancelar.setText("Cancelar"); btnCancelar.setMnemonic('C'); btnConsulta.setText("Consultar"); btnConsulta.setMnemonic('n'); btnRenombrar.setText("Renombrar"); btnRenombrar.setMnemonic('R'); btnEliminar.setText("Eliminar"); btnEliminar.setMnemonic('E');

//Agregamos los Botones al Panel y les asignamos un evento

//Boton de Guardar para crear archivo pnlBotones.add(btnGuardar);

btnGuardar.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent e){ String nombreArchivo=txtNombre.getText(); String carpeta=System.getProperty("user.dir");

String direccion=carpeta+"/"+nombreArchivo+".txt"; FileWriter fw = null; // la extension al archivo

try {

fw = new FileWriter(direccion); } catch (IOException ex) {

Logger.getLogger(U1_EA.class.getName()).log(Level.SEVERE, null, ex); }

BufferedWriter bw = new BufferedWriter(fw); PrintWriter salArch = new PrintWriter(bw); String text = txtNombre.getText();

String text2 = txtGenero.getText(); String text3 = txtDesarrollador.getText();

(6)

String text4 = txtAño.getText(); String text5 = txtNombre.getText(); String text6=txtPlataforma.getText(); salArch.print("Ficha Tecnica:"); salArch.println(); salArch.print("Nombre:"+text); salArch.println(); salArch.print("Genero:"+text2); salArch.println(); salArch.print("Desarrollador:"+text3); salArch.println(); salArch.print("Año:"+text4); salArch.println(); salArch.print("Plataforma:"+text6); salArch.println(); salArch.close();

JOptionPane.showMessageDialog(null, "Se ha guardado la informacion del Videojuego", "Registro",

JOptionPane.WARNING_MESSAGE); } });

//Boton de Cancelar para abortar procedimiento pnlBotones.add(btnCancelar);

btnCancelar.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent e){

JOptionPane.showMessageDialog(null, "Se ha cancelado el proceso de Registro", "Registro", JOptionPane.WARNING_MESSAGE);

System.exit(0);} });

//Boton de Consultar para leer archivo y desplegarlo en pantalla pnlBotones.add(btnConsulta);

btnConsulta.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent evt){ String carpeta=System.getProperty("user.dir"); JFileChooser fc=new JFileChooser(carpeta); fc.showOpenDialog(null);

(7)

try{

FileReader lector = new FileReader(file);

BufferedReader bufer = new BufferedReader(lector); String texto="";

String linea = "";

while(((linea = bufer.readLine()) != null)){ texto+=linea+"\n"; } txtConsulta.setText(texto); }catch(Exception e){ } txtConsulta.setVisible(true); consulta.setVisible(true);} }); pnlBotones.add(btnRenombrar); btnRenombrar.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent evt){ new Ventana2(); }}); pnlBotones.add(btnEliminar); btnEliminar.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent evt){ String carpeta=System.getProperty("user.dir"); JFileChooser fc=new JFileChooser(carpeta); fc.showOpenDialog(null);

File file=fc.getSelectedFile(); if (file.delete())

JOptionPane.showMessageDialog(null, "La ficha del Videojuego ha sido borrada satisfactoriamente");

else

JOptionPane.showMessageDialog(null, "La ficha del Videojuego no se puede eliminar");}});

//Se crea el frame que contendra nuestro formulario

JFrame frame=new JFrame("Games Loth: Ficha Tecnica"); frame.setLocation(100, 100);

(8)

frame.setVisible(true); frame.setSize(800, 220);

frame.addWindowListener(new WindowAdapter() { @Override

public void windowClosing(WindowEvent e){ System.exit(0);

} });

//Se agregan los 3 paneles a nuestro formulario principal frame.add(pnlEtiquetas, BorderLayout.WEST); frame.add(pnlBotones,BorderLayout.SOUTH); frame.add(pnlTextField, BorderLayout.CENTER); } } }

//Creacion de una clase para ventana de Renombrar class Ventana2{

public Ventana2(){

//Creacion de Etiqueta Nuevo nombre

JLabel nvonombre= new javax.swing.JLabel(); nvonombre.setText("Nuevo nombre:");

nvonombre.setFont( new Font("TimesRoman",Font.PLAIN,17)); //Caja de texto donde se captura el nuevo nombre

JTextField txtNvoNombre = new javax.swing.JTextField(); txtNvoNombre.setText("");

//Boton de Seleccionar y renombrar con su apariencia y evento JButton btnNvoNombre = new javax.swing.JButton();

btnNvoNombre.setText("Seleccionar y Cambiar"); btnNvoNombre.setMnemonic('C');

btnNvoNombre.addMouseListener(new MouseAdapter() { @Override

public void mouseClicked(MouseEvent evt){ String carpeta=System.getProperty("user.dir"); JFileChooser fc=new JFileChooser(carpeta); fc.showOpenDialog(null);

File file=fc.getSelectedFile();

String nvo=file.getParent()+"\\"+txtNvoNombre.getText()+".txt"; File f2=new File(txtNvoNombre.getText());

(9)

boolean correcto=file.renameTo(f2); if(correcto==true)

JOptionPane.showMessageDialog(null, "La ficha Tecnica se ha Renombrado"); else

JOptionPane.showMessageDialog(null, "No se pudo Renombrar"); }});

//Se crea el frame que contendra nuestro formulario Renombrar JFrame frame2=new JFrame("Renombrar");

frame2.setLocation(400, 400); frame2.setVisible(true); frame2.setSize(450, 70);

//Se agregan nuestros componentes al frame frame2.add(nvonombre, BorderLayout.WEST); frame2.add(txtNvoNombre, BorderLayout.CENTER); frame2.add(btnNvoNombre, BorderLayout.EAST); } }

Ejecución:

(10)

Primeramente se nos muestra un Formulario para registrar la ficha técnica de los videojuegos que tenemos en existencia, el formulario, nos pide el nombre, genero, desarrollador, año y plataforma del videojuego

Ingresamos dicha información para crear el registro de este videojuego, posteriormente damos clic en el botón de “Guardar” para crear un archivo en carpeta que contendrá la información del juego

(11)

Después nos despliega el mensaje de que se ha guardado la información

Aquí podemos verificar que se creó un archivo tipo .txt con el nombre del Videojuego, el cual contiene la información del mismo

(12)

Ahora probaremos el botón de consulta

Al dar clic en el botón “Consultar”, nos desplegara una pantalla de selección de archivos, donde seleccionaremos el archivo que queremos desplegar en pantalla

(13)

Al seleccionar el archivo nos desplegara la información de la Ficha técnica en el text field de consulta

Al dar clic sobre el botón de renombrar, se abrirá una nueva ventana donde se nos pide el nuevo nombre que queremos poner al archivo que vamos a seleccionar

(14)

Capturamos el nombre nuevo y damos clic sobre el botón de selecciona y renombrar, esto abrirá una nueva ventana de selección de archivos para elegir el archivo a renombrar

(15)

Aquí verificamos el nuevo nombre de la ficha

Finalmente probamos el botón para eliminar algún archivo, al dar clic sobre este botón se nos abrirá una nueva ventana para seleccionar el archivo a eliminar

(16)

Nos manda un mensaje de eliminación satisfactoria

Referencias

Documento similar

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

De acuerdo con Harold Bloom en The Anxiety of Influence (1973), el Libro de buen amor reescribe (y modifica) el Pamphihis, pero el Pamphilus era también una reescritura y

Primeros ecos de la Revolución griega en España: Alberto Lista y el filohelenismo liberal conservador español 369 Dimitris Miguel Morfakidis Motos.. Palabras de clausura

[r]

[r]

El comando RENAME cambia el nombre del archivo, su extensión o ambos, puede usar caracteres comodín para renombrar un conjunto de archivos.. Que es el DOS y que

[r]