Txerrinko

VisorFicherosTexto

May 23rd, 2012
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.92 KB | None | 0 0
  1. package tanda2;
  2.  
  3. import java.awt.Container;
  4. import java.awt.HeadlessException;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.io.BufferedReader;
  8. import java.io.File;
  9. import java.io.FileNotFoundException;
  10. import java.io.FileReader;
  11. import java.io.IOException;
  12.  
  13. import javax.swing.JButton;
  14. import javax.swing.JComboBox;
  15. import javax.swing.JFrame;
  16. import javax.swing.JOptionPane;
  17. import javax.swing.JScrollPane;
  18. import javax.swing.JTextArea;
  19. import javax.swing.JTextField;
  20.  
  21. public class VisorFichTexto2 extends JFrame implements ActionListener{
  22.    
  23.     JTextField directorio;
  24.     JComboBox selector;
  25.     JTextArea visor;
  26.     JButton reset;
  27.  
  28.     VisorFichTexto2()
  29.     {
  30.         super("Visor de ficheros de texto");
  31.         Container c=getContentPane();
  32.        
  33.         setLayout(null);//valor de layout a null
  34.         setBounds(450,100,500,430);
  35.        
  36.         directorio=new JTextField();
  37.         directorio.setBounds(30,30,200,30);
  38.         directorio.addActionListener(this);
  39.        
  40.         selector=new JComboBox();
  41.         selector.setEnabled(false);
  42.         selector.setBounds(30,100,150,30);
  43.         selector.addActionListener(this);
  44.        
  45.         visor=new JTextArea();
  46.         visor.setEnabled(false);
  47.         visor.setLineWrap(true);
  48.         JScrollPane sp1=new JScrollPane(visor,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
  49.         sp1.setBounds(200,100,250,250);
  50.        
  51.         reset=new JButton("RESETEAR");
  52.         reset.setBounds(50,300,100,30);
  53.         reset.addActionListener(this);
  54.        
  55.         c.add(directorio);
  56.         c.add(selector);
  57.         c.add(sp1);
  58.         c.add(reset);
  59.        
  60.         setVisible(true);      
  61.     }
  62.    
  63.     public static void main(String[] args) {
  64.         new VisorFichTexto2();
  65.     }
  66.    
  67.    
  68.     //Genramos 3 ARRAYLIST
  69.             //uNO COGERA LAS CONSULTAS OCUPADAS
  70.             //uno cogia de todos las consutlas de ese medico las horas que estaban ocupadas y las guardaba
  71.             /*
  72.             el otro un arrAylist que guarda las horas seleccionadas
  73.  
  74.          y luego, comparas uno con el otro, si estan o no repeditas
  75.      
  76.          y si no esta repetida que te mande un mensaje de se a asigando
  77.          tu cuando te venga la inspiracion ponte a escribir sin parar
  78.  
  79.          pero pensando
  80.  
  81.          y luego ya veras de lo que as escrito que tiene logica y que no
  82.  
  83.          y lo arreglas*/
  84.    
  85.     public void actionPerformed(ActionEvent ae) {
  86.         if(ae.getSource()==directorio)//para identificar el componente que genero el evente
  87.         {    
  88.             //estabelecemos a permitido
  89.             selector.setEnabled(true);
  90.             File f=new File(directorio.getText());//obtenemos el texto
  91.             String[] archivos;
  92.            
  93.             if(f.exists() && f.isDirectory())  // si el fichero existe o es directorio
  94.             {
  95.                 archivos=f.list(); // los lista
  96.                 selector.removeAll(); // los eliminar
  97.                 for (int i=0; i<archivos.length;i++){
  98.                     selector.addItem(archivos[i]); // añadimos item por cada recorrido
  99.                 }
  100.             }
  101.         }
  102.         if(ae.getSource()==selector)//si el componente genrado por el vento es el selector
  103.         {
  104.             String archivoselec=(String) selector.getSelectedItem(); //archivos seleeccionados seran iguales al item obtenido
  105.             String formato="";
  106.            
  107.             for(int cont=0;cont<archivoselec.length();cont++)
  108.             {
  109.                 if(archivoselec.charAt(cont)=='.')
  110.                 {   //si de los archivoseleccionados hay caracter con punto
  111.                     formato+=archivoselec.substring(cont+1); // al formato le pasamos el substrign  de la contador de puntos +1
  112.                 }
  113.             }
  114.             if(formato.equals("txt")||formato.equals("doc")) // si el formato es igual a txt o doc
  115.             {
  116.                 try {
  117.                     BufferedReader br=new BufferedReader(new FileReader(directorio.getText()+ "\\" + archivoselec));
  118.                                                                     //genermos nuevo fichero en el que se obtengan los textos
  119.                                                                  //de los archivos seleccionador
  120.                     String textoarchivo="";
  121.                     String caracter;
  122.                    
  123.                     try {
  124.                         while((caracter=br.readLine())!=null)//mientras la linea escrita n oeste vacia
  125.                         {
  126.                             textoarchivo+=caracter+"\n";//el texto de archivo contendra un salto de linea
  127.                         }
  128.                     } catch (HeadlessException e1) {
  129.                         e1.printStackTrace();
  130.                     } catch (IOException e1) {
  131.                         e1.printStackTrace();
  132.                     }
  133.                     visor.setText(textoarchivo);
  134.                     try
  135.                     {
  136.                         br.close();
  137.                     } catch (IOException e) {
  138.                         JOptionPane.showMessageDialog(null,"Error de I/O");
  139.                     }
  140.                 } catch (FileNotFoundException e) {
  141.                     JOptionPane.showMessageDialog(null,"Archivo no encontrado");
  142.                 }
  143.             }else{
  144.                 JOptionPane.showMessageDialog(null,"Sólo se pueden visualizar ficheros de texto");
  145.             }
  146.         }
  147.         if(ae.getSource()==reset)
  148.         {
  149.            
  150.             visor.setText("");//pasamos su valor por defecto , es decir dejamos en blanco los valores
  151.             visor.setEnabled(false);//establecesmos el valor permitido a falase a nuevo visor
  152.             /*while(selector.getItemCount()>0)
  153.             {
  154.                 selector.remove(0);
  155.             }*/
  156.             selector.setEnabled(false); // establecemso vlaor permitido a flase al selector
  157.             directorio.setText("");// establecemos  el texto del directorio a vacio
  158.         }  
  159.     }
  160. }
Advertisement
Add Comment
Please, Sign In to add comment