Realizar un programa que le permita al usuario ingresar una serie de datos de un libro como el nombre del autor, el titulo, el precio y código.
El programa deberá mostrar un menú que nos pida insertar registro, mostrar registro y buscar un registro.
Todos los datos deberán ser almacenados en un archivo .txt en forma de bits.
Captura de muestra:
Clase Principal DLibros:
package dlibros; //@author Oliver //http://blog2000.blogspot.mx/ import java.io.*; import java.awt.*; import javax.swing.*; public class DLibros { // Objeto agenda static Datos[]obj=new Datos[3]; //Menu para elegir una opcion public static int menu(){ String opt=JOptionPane.showInputDialog(null,"" + "<html><p style="width: 500px; background-color: #CCCCCC; border-left: solid 20px #FF0000; padding: 10px; font-family: consolas; font-size: 30px;"><b><img src='file:insert1.png'/>1. Insertar registro" + "n<html><p style="width: 500px; background-color: #CCCCCC; border-left: solid 20px #FF0000; padding: 10px; font-family: consolas; font-size: 30px;"><b><img src='file:list1.png'/>2. Mostrar registro" + "n<html><p style="width: 500px; background-color: #CCCCCC; border-left: solid 20px #FF0000; padding: 10px; font-family: consolas; font-size: 30px;"><b><img src='file:search1.png'/>3. Buscar un registro" + "n<html><p style="width: 500px; background-color: #CCCCCC; border-left: solid 20px #FF0000; padding: 10px; font-family: consolas; font-size: 30px;"><b><img src='file:leave1.png'/>4. Salirn","ELIGE UNA OPCION",JOptionPane.PLAIN_MESSAGE); int op=Integer.parseInt(opt); return op; } //Main principal public static void main(String[] args) throws FileNotFoundException, IOException,ClassNotFoundException{ int x=0; do{ x=menu(); switch(x){ case 1: //Captura datos try{ for(int i=0;i<3;i++){ obj[i]=new Datos(); obj[i].captura(); } FileOutputStream a=new FileOutputStream("Registro.txt"); ObjectOutputStream aa=new ObjectOutputStream(a); aa.writeObject(obj); aa.flush(); aa.close(); } catch(IOException e){ Icon icono = new ImageIcon("C:\Users\Ortuño\Documents\NetBeansProjects\Dialogos\error.png"); JOptionPane.showMessageDialog(null,"Error al escribir !","MENSAJE",JOptionPane.ERROR_MESSAGE,icono); } break; case 2: // Abrir el archivo (Imprimir) FileInputStream b=new FileInputStream("Registro.txt"); ObjectInputStream bb=new ObjectInputStream(b); obj=(Datos[])bb.readObject(); bb.close(); JTextArea Salida1= new JTextArea(); String cad1="LISTA:n"; for(int i=0;i<3;i++){ cad1+=("n"+obj[i].autor+" "+obj[i].titulo+" "+obj[i].precio+" "+obj[i].codigo+"n"); Salida1.setText(cad1); Salida1.setFont(new Font("consolas", 0, 30)); Salida1.setForeground(new Color(0x000000)); Salida1.setBackground(new Color(0xDDDDDD)); } Icon icono0 = new ImageIcon("C:\Users\Ortuño\Documents\NetBeansProjects\Dialogos\information.png"); JOptionPane.showMessageDialog(null,Salida1,"REGISTRO",JOptionPane.INFORMATION_MESSAGE,icono0); break; case 3: // Abrir el archivo FileInputStream c=new FileInputStream("Registro.txt"); ObjectInputStream cc=new ObjectInputStream(c); obj=(Datos[])cc.readObject(); cc.close(); String nombre=JOptionPane.showInputDialog(null,"<html><p style="border-left: solid 20px #0000FF; border-right: solid 20px #0000FF; padding: 10px; font-family: consolas; font-size: 20px;"><b>Nombre a buscar","BUSQUEDA",JOptionPane.PLAIN_MESSAGE); for(int i=0;i<3;i++) if(obj[i].autor.equalsIgnoreCase(nombre)){ JTextArea Salida2= new JTextArea(); String cad2=""; cad2+=("nAUTOR:"+obj[i].autor+" TITULO:"+obj[i].titulo+" PRECIO:"+obj[i].precio+" CODIGO:"+obj[i].codigo+"n"); Salida2.setText(cad2); Salida2.setFont(new Font("consolas", 0, 30)); Salida2.setForeground(new Color(0x000000)); Salida2.setBackground(new Color(0xDDDDDD)); Icon icono1 = new ImageIcon("information.png"); JOptionPane.showMessageDialog(null,Salida2,"RESULTADOS DE BUSQUEDA",JOptionPane.INFORMATION_MESSAGE,icono1); } break; case 4: Icon icono2 = new ImageIcon("information.png"); JOptionPane.showMessageDialog(null,"<html><p style="padding: 10px; font-family: consolas; font-size: 20px;"><b>Hasta luego !","SALIDA",JOptionPane.INFORMATION_MESSAGE,icono2); break; default: Icon icono3 = new ImageIcon("error.png"); JOptionPane.showMessageDialog(null,"<html><p style="padding: 10px; font-family: consolas; font-size: 20px;"><b>Opcion incorrecta !","MENSAJE",JOptionPane.ERROR_MESSAGE,icono3); break; } } while(x==1|x==2|x==3|x!=4); } }
Clase Datos:
package dlibros; //@author Oliver //http://blog2000.blogspot.mx/ import java.io.*; import javax.swing.*; public class Datos implements Serializable{ String autor, titulo, precio, codigo; public void captura(){ autor=JOptionPane.showInputDialog(null,"<html><p style="border-left: solid 20px #0000FF; border-right: solid 20px #0000FF; padding: 10px; font-family: consolas; font-size: 20px;"><b>Nombre del autor","AUTOR",JOptionPane.PLAIN_MESSAGE); titulo=JOptionPane.showInputDialog(null,"<html><p style="border-left: solid 20px #0000FF; border-right: solid 20px #0000FF; padding: 10px; font-family: consolas; font-size: 20px;"><b>Introduce el titulo","TITULO",JOptionPane.PLAIN_MESSAGE); precio=JOptionPane.showInputDialog(null,"<html><p style="border-left: solid 20px #0000FF; border-right: solid 20px #0000FF; padding: 10px; font-family: consolas; font-size: 20px;"><b>Introduce el precio","PRECIO",JOptionPane.PLAIN_MESSAGE); codigo=JOptionPane.showInputDialog(null,"<html><p style="border-left: solid 20px #0000FF; border-right: solid 20px #0000FF; padding: 10px; font-family: consolas; font-size: 20px;"><b>Introduce el codigo","CODIGO",JOptionPane.PLAIN_MESSAGE); } }
Acerca de mi
Buscar en el blog
Lista de categorias
- CSS (14)
- Entretenimiento (4)
- HTML (18)
- Iconos (13)
- Inspiración (13)
- JAVA Interfaz (6)
- jQuery (3)
- Lo que NO encontré en Internet (1)
- Programas en C (69)
- Recursos Online (13)
- Trucos (6)
- Widgets (2)