Mostrando entradas con la etiqueta Java. Mostrar todas las entradas
Mostrando entradas con la etiqueta Java. Mostrar todas las entradas

domingo, 30 de agosto de 2009

Tutorial Swing, JAVA

1 comentarios

Saludos a todos aquellos que siguen este blog - si es que alguien lo hace XD - y antes que nada, quiero pedir disculpas a mi blog y a todo aquel que se pasa por aquí de ves en cuando, no he podido publicar nada, no he hecho nada técnico últimamente, me he vuelto un flojo!! - en realidad ya lo soy, pero me he vuleto más flojo.

Bien, pasando a lo importante, ni tanto, en esta entrada sólo les traigo un tutorial de Java enfocado a la librería SWING, ya saben, lo bonito vende jejejeje, así que pues a petición de un primo que es vicioso del Tantra eXtreme les dejo el tuto en el siguiente link:

Descargar Tutorial


PD: Primo, si no sabes cómo compilar o dónde conseguir el compilador, usa GOOGLE, y si después de eso sigues igual, deja un comentario en esta entrada y así yo creo otra entrada para mostrarte cómo conseguir el compilador!!
Read full story

domingo, 29 de marzo de 2009

Java, Compilar y Ejecutar desde una Terminal

4 comentarios

La verdad es que he sido estúpido al no poner esta entrada antes jejeje.... se me pasó totalmente y eso no tiene perdón... aún así creo que esta entrada será de utilidad a muchas personas... me baso en que ya tienen instalado el jdk.. si no un #apt-get install sun-java6-jdk lo solucionará...

Compilando...

suponiendo que ya tenemos un programa en un archivo .java (ej. Prueba.java) procedemos a abrir una terminal y situarnos en el directorio en el que se encuentra dicho fichero .java y ejecutamos la siguiente orden:
$javac Prueba.java
Ejecutando...

Después de ejecutar el comando javac nos arrojará los errores - en caso de haberlos - y si no arroja nada es que el código ha sido compilado exitosamente y nos generará un archivo .class (Prueba.class en mi ejemplo), el cual servirá para ejecutar el programa en la JVM... en la misma terminal de la siguiente forma:
$java Prueba
*Nótese que no se le agrega .class

Crear ficheros ejecutables, .jar

para crear los .jar (ejecutables de java)... primero tenemos que crear un archivo de manifiesto.. en el cual pondremos el nombre de la clase que contenga al método main... nos situamos en la terminal en el mismo directorio que nuestro archivo .class ... yo crearé el archivo de manifiesto en nano pero puede servir cualquier otro editor de texto:
$nano MANIFEST.MF
de esa forma nano al no encontrar un fichero llamado MANIFEST.MF me creará uno nuevo y lo abrirá para que lo edite... le agrego el nombre de la clase que contiene el método principal...
MAIN-CLASS: Prueba
*Nótese que no se le agrega el .class y que la palabra MAIN-CLASS: es obligatoria...

una ves que tenemos el fichero de manifiesto listo pasamos a crear el fichero .jar en la terminal de la siguiente forma:
$jar -cfmv Prueba.jar MANIFEST.MF Prueba.class
*se creará el fichero Prueba.jar que contendrá el fichero de manifiesto y la clase ó clases que tenga nuestro proyecto... sólo es cuestión de ir poniendo el nombre de todas.. por ejemplo: $jar -cfmv Prueba.jar MANIFEST.MF Clase1.class Clase2.class Clase3.class ....

Ejecutando los .jar

Ahora en una terminal nos situamos en el directorio de nuestro fichero .jar y de la siguiente forma lo ejecutamos:
$java -jar Prueba.jar
espero les sirva esta información... cualquier apunte o duda aquí estoy =)
Read full story

Java, Ordenamiento Burbuja

13 comentarios
Bueno ahora sólo les traigo un pequeño ejemplo del ordenamiento Burbuja en Java... es un método muy sencillo:

//Librería para los cuadros de Dialogos
import javax.swing.*;

//inicio de la Clase Burbuja
public class Burbuja{

//el vector para insertar los datos
public int [] vector;

//metodo Constructor
public Burbuja(){

//definimos el tamaño del arreglo através del metodo tamaño()
vector = new int[tamaño()];

}//Fin Constructor

//metodo para obtener el tamaño del vector
public int tamaño(){

//leectura del tamaño
int a = Integer.parseInt(JOptionPane.showInputDialog("Tamaño del Vector??:"));

//retorno del tamaño
return a;

}//fin tamaño

//metodo para la lectura de los datos
public void leerDatos(){

//ciclo para leer todos los datos
for(int i=0; i<vector.length; i++)//llenamos las posiciones del vector
vector[i] = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el dato:"));

}//fin leerDatos

//método de ordenamiento Burbuja
public void ordenar(){

//variable auxiliar
int aux;

//ciclo1 para el ordenamiento
for(int i=0; i<vector.length; i++){

//ciclo2 para el ordenamiento
for(int j=0; j<vector.length-1; j++){

//condición, si el valor en posicion actual es mayor
//que el valor de la siguiente posicion, realiza acciones
if (vector[j]>vector[j+1]){

//variable auxiliar toma el valor de la posicion actual
aux = vector[j];

//vector en la posicion actual toma el valor de la siguiente posicion
vector[j] = vector[j+1];

//vector en la siguiente posición toma el valor de la posición actual
vector[j+1] = aux;

}//fin if

}//fin ciclo2

}//fin ciclo1

}//fin metodo ordenar

//metodo imprimir
public String imprimir(){

//variable para el retorno
String salida="";

//ciclo para agregar todos los datos a la variable de retorno
for(int i=0; i<vector.length; i++)
//agregando datos y retorno de carro a la variable de retorno
salida+=vector[i]+"\n";

//retorno de la variable
return salida;

}//fin metodo imprimir

//metodo main
public static void main(String args[]){

//instancia de la clase Burbuja
Burbuja burbuja = new Burbuja();
//invocar metodo leerDatos
burbuja.leerDatos();
//invocar metodo ordenar
burbuja.ordenar();
//invocar metodo imprimir y mostrar la salida en un cuadro de diálogo
JOptionPane.showMessageDialog(null,burbuja.imprimir());

//salir de la aplicación
System.exit(0);

}//fin del metodo main

}//fin clase Burbuja

Descargar Código
Read full story

viernes, 23 de enero de 2009

Apache PDFBox - Java PDF Library

2 comentarios

logo1

Bueno ahora hablaré un poco sobre Apache PDFBox..... es una librería PDF para Java y es Open Source, este proyecto permite la creación de nuevos documentos PDF, manipulación de documentos existentes y la capacidad de extraer el contenido de los documentos. PDFBox también incluye varias utilidades de línea de comandos.

  • PDF para la extracción de texto
  • Combinar documentos PDF
  • Documento PDF de cifrado / descifrado
  • Motor de búsqueda Lucene Integración
  • Llene los datos del formulario y FDF XFDF
  • Crear un archivo PDF a partir de un archivo de texto
  • Crear las imágenes de páginas PDF
  • Imprimir en formato PDF

La página del proyecto es:

http://incubator.apache.org/pdfbox/index.html

y aquí les dejé colgado también la librería:

Download PDFBox

ahora para hacerla funcionar extraemos el contenido del zip y nos vamos a la carpeta:

PDFBox-0.7.3/lib

ahí encontraremos un jar... PDFBox-0.7.3-dev.jar y lo copiamos en la misma ruta que las librerías del POI... Linux:

/usr/lib/jvm/java-6-sun-1.6.0.07/jre/lib/ext

en Uindous:

C:\Archivos de Programas/jvm/java-6-sun-1.6.0.07/jre/lib/ext

ahora nos vamos al siguiente directorio:

PDFBox-0.7.3/external

dentro de este directorio hay varios jar pero nos interesan los siguientes:

FontBox-0.1.0-dev.jar bcprov-jdk14-132.jar

y las copiamos en los mismos directorios que las otras librerias.... eso es todo, ya debe de quedar todo listo para correr Buscador_0.1.1.jar

link que me sirvió mucho para poder implementar la librería:

http://diegosoler-lotus.blogspot.com/2008/04/analizando-un-archivo-adjunto-con.html

Read full story

Apache POI - Java API

4 comentarios

Apache POI - Java API To Access Microsoft Format Files

group-logo

Bueno esta es una librería que encontré después de mucho investigar... como reza el título da soporte para trabajar ficheros con formato de Microsoft, el proyecto POI consiste en APIs para la manipulacion de varios formatos de archivos basados en el OLE 2 de Microsoft, se pueden crear archivos de Excel, Word y PowerPoint pues... y puede trabajar con los formatos XLSX, DOCX and PPTX.

bueno para más información este es el link del proyecto:

http://poi.apache.org/index.html

y aquí les colgué yo la librería para que no se compliquen mucho:

Download Apache POI

bueno una ves que se descargen el archivo.... lo descomprimen... y los primeros 3 jars que se encuentran son:

poi-3.2-FINAL-20081019.jar poi-contrib-3.2-FINAL-20081019.jar poi-scratchpad-3.2-FINAL-20081019.jar

bueno esos jar los copian en el directorio ext de la jre en linux es:

/usr/lib/jvm/java-6-sun-1.6.0.07/jre/lib/ext

en Uindous no estoy muy seguro pero sería algo así:

C:\Archivos de Programas/jvm/java-6-sun-1.6.0.07/jre/lib/ext

Read full story

Interface InterfaceBuscador

0 comentarios

Es una interface sencilla que implementan las clases ClaseBucaPdf y ClaseBuscaWord... sinceramente solo implementé la interface porque quice no por otra cosa.. creo que ni es necesaria jejeje.... bueno el código:

Download InterfaceBuscador.java

public interface InterfaceBuscador{

void loadFile(String nombre) throws java.io.IOException;
String getText() throws java.io.IOException;
void close() throws java.io.IOException;

}

Read full story

Clase ClaseBuscaWord

0 comentarios

Bien ahora en esta clase es muy parecida a ClaseBuscaPdf y básicamente hacen lo mismo pero esta implementa la librería POI... de la que les comentare en la sección Librerias... bien ahora el codigo:

Download ClaseBuscaWord.java

import java.io.*;
import org.apache.poi.hwpf.extractor.WordExtractor;

class ClaseBuscaWord implements InterfaceBuscador{

private FileInputStream ficheroEntrada;
public WordExtractor we;

public ClaseBuscaWord(){

ficheroEntrada =null; //new FileInputStream(ficheroNombre);
we=null;//new WordExtractor(ficheroEntrada);
//ficheroEntrada.close();

}

public void loadFile(String nombre) throws java.io.IOException{

ficheroEntrada = new FileInputStream(nombre);
we = new WordExtractor(ficheroEntrada);

}

public String getText() throws java.io.IOException{

return we.getText();

}

public void close() throws java.io.IOException{

ficheroEntrada.close();
ficheroEntrada = null;
we = null;

}

}

Read full story

Clase ClaseBuscaPdf

0 comentarios

En esta clase hago uso de la librería PDFBox.... ya hablaré de ella en la sección Librerías... en esta clase es donde abro el .pdf y ver su contenido (en realidad no se ve nada texto).... aqui el codigo:

Download ClaseBuscaPdf.java

import java.io.*;
import org.pdfbox.pdmodel.PDDocument;
import org.pdfbox.util.PDFTextStripper;

class ClaseBuscaPdf implements InterfaceBuscador{

private FileInputStream ficheroEntrada;
public PDDocument pdf;
public PDFTextStripper stripper;
//public String salida;

public ClaseBuscaPdf(){

ficheroEntrada =null;// new FileInputStream(ficheroNombre);
pdf= null;//PDDocument.load(ficheroEntrada);

}

public void loadFile(String nombre) throws IOException{

ficheroEntrada = new FileInputStream(nombre);
pdf = PDDocument.load(ficheroEntrada);

stripper = new PDFTextStripper();
stripper.setSortByPosition(false);
stripper.setStartPage(1);
stripper.setEndPage(Integer.MAX_VALUE);

}

public String getText() throws IOException{

return stripper.getText(pdf);

}

public void close() throws IOException{

pdf.close();
ficheroEntrada.close();
ficheroEntrada = null;
//System.out.println("Cerrando Ficheros!");

}

}

Read full story

Clase Paneles

0 comentarios

En esta clase hereda a la clase Buscador y es donde creo los JRadioButtons, los JTextsAreas y Labels para colocarlos en paneles y distribuirlos en el JFrame... bueno ahora el código:

Download Paneles.java

import javax.swing.*;
import java.awt.GridLayout;
import java.awt.event.*;

class Paneles{

public JTextArea areaTexto,areaError;
public JScrollPane scroll,scrollError;

public JLabel labelRuta, labelFrase,labelExt,labelBuscar;
public JTextField campoFrase, campoRuta;

public JRadioButton doc,pdf,hdd;
public JPanel entrada, salida, seleccion, errores;

public Paneles(){

crearPaneles();
crearLabels();
crearCampos();
crearRadioBotones();
configurarPaneles();
configurarCampos();
setComponentes();
setEvento();

}

public void crearPaneles(){

entrada = new JPanel();
salida = new JPanel();
seleccion = new JPanel();
errores = new JPanel();

}

public void crearLabels(){

labelRuta = new JLabel("En Ruta:");
labelFrase = new JLabel("Frase a Buscar:");
labelExt = new JLabel("Extensión:");
labelBuscar = new JLabel("Buscar en:");

}

public void crearCampos(){

campoRuta = new JTextField();
campoFrase = new JTextField();

areaTexto = new JTextArea();
scroll = new JScrollPane(areaTexto);

areaError = new JTextArea(10,0);
scrollError = new JScrollPane(areaError);

}

public void crearRadioBotones(){

doc = new JRadioButton(".doc",true);
pdf = new JRadioButton(".pdf",false);
hdd = new JRadioButton("Disco Local",true);

}

public void configurarPaneles(){

entrada.setLayout(new GridLayout(4,1));
salida.setLayout(new GridLayout(1,1));
seleccion.setLayout(new GridLayout(5,1));
errores.setLayout(new GridLayout(1,1));

}

public void configurarCampos(){

campoRuta.setText("C:/");
campoFrase.setText("Introduzca aqui su frase a buscar.");
campoRuta.setEditable(false);
areaTexto.setEditable(false);
areaError.setEditable(false);

}

public void setComponentes(){

entrada.add(labelRuta);
entrada.add(campoRuta);
entrada.add(labelFrase);
entrada.add(campoFrase);

seleccion.add(labelBuscar);
seleccion.add(hdd);
seleccion.add(labelExt);
seleccion.add(doc);
seleccion.add(pdf);

salida.add(scroll);
errores.add(scrollError);

}

public void setText(){

areaTexto.setText("");
areaError.setText("");

}

public void setEvento(){

hdd.addMouseListener( new MouseAdapter(){
public void mousePressed(MouseEvent e){

if(hdd.isSelected()==true)
campoRuta.setEditable(true);

else
campoRuta.setEditable(false);

}
});

}

}

Read full story

Clase Buscador

0 comentarios

Bueno este es la clase principal de mi proyecto.. aqui creo el JFrame... el método que usé para hacer la busqueda es recursivo (aún no se usar árboles Y_Y) si alguien está interesado en ayudar a mejorar el código por favor adelante!!!!..... en la sección Librerias les pondré otras librerias que usé..... aquí les dejo la clase principal:

Descargar Buscador.java

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

public class Buscador extends Paneles{

private static Buscador busca;
private ClaseBuscaWord cBuscaWord;
private ClaseBuscaPdf cBuscaPdf;

private JFrame frame;

private JMenuBar barraMenu;
private JMenu opcion;
private JMenuItem busqueda, salir;

private File directorio;
private String frase;
private int resultado;

public Buscador(){

super();

cBuscaWord = new ClaseBuscaWord();
cBuscaPdf = new ClaseBuscaPdf();

directorio = null;
resultado = -1;
frase = null;

crearMenu();
crearFrame();
setElementos();
setEventos();

}

public void crearMenu(){

barraMenu = new JMenuBar();
opcion = new JMenu("Opcion");
busqueda = new JMenuItem("Buscar");
salir = new JMenuItem("Salir");
opcion.add(busqueda);
opcion.add(salir);
barraMenu.add(opcion);

}

public void crearFrame(){

frame = new JFrame("Buscador Version 0.1.1 :::...");

frame.add("West",super.seleccion);
frame.add("South",super.errores);
frame.add("North",super.entrada);
frame.add("Center",super.salida);

}

public void setElementos(){

frame.setJMenuBar(barraMenu);
frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setLocation(300,100);
frame.setVisible(true);

}

public void setEventos(){

busqueda.addMouseListener( new MouseAdapter(){
public void mousePressed(MouseEvent e){

setText();

if(doc.isSelected()||pdf.isSelected()){

try{

frase = campoFrase.getText();

if(hdd.isSelected())
directorio = new File("C:/");

else
directorio = new File(campoRuta.getText());

listarDirectorio(directorio);
JOptionPane.showMessageDialog(null,"Fin de Busqueda");

if ((areaTexto.getText()).equals(""))
areaTexto.setText("No hay resultados para su Busqueda!");

}catch(Exception ex){

JOptionPane.showMessageDialog(null,
"Error:\nVerifique la Ruta de Busqueda",
"Error", JOptionPane.ERROR_MESSAGE);

}

}else
JOptionPane.showMessageDialog(null,
"Seleccione un Tipo de Archivo a Buscar",
"Informacion", JOptionPane.INFORMATION_MESSAGE);

directorio = null;

}
});

salir.addMouseListener( new MouseAdapter(){
public void mousePressed(MouseEvent e){
JOptionPane.showMessageDialog(null,
"Gracias por usar este Software!!",
"Saliendo...",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
});

}

public static void listarDirectorio(File directorio){

File [] ficheros = directorio.listFiles();

for(int x=0;x<ficheros.length;x++)

if(ficheros[x].isDirectory())
listarDirectorio(ficheros[x]);

else
try{

if((ficheros[x].getName()).endsWith(".doc")&&busca.doc.isSelected())
busca.busquedaWord(ficheros[x]);

if((ficheros[x].getName()).endsWith(".pdf")&&busca.pdf.isSelected())
busca.busquedaPdf(ficheros[x]);

}catch(Exception exc){

busca.areaError.append("Error en: "
+ficheros[x]+"\nTipo de Error: "+exc+"\n\n");

}

}

}

public void busquedaWord(File fichero) throws Exception{

cBuscaWord.loadFile(""+fichero);
resultado = cBuscaWord.we.getText().indexOf(frase);

if(resultado>-1)
areaTexto.append("Fichero: "+fichero+"\n");

cBuscaWord.close();

}

public void busquedaPdf(File fichero) throws Exception{

cBuscaPdf.loadFile(""+fichero);
resultado = (cBuscaPdf.getText()).indexOf(frase);

if(resultado>-1)
areaTexto.append("Fichero: "+fichero+"\n");

cBuscaPdf.close();
}

public static void main(String args []){

busca = new Buscador();

}

}

Read full story

Proyecto de Vacaciones

0 comentarios

java

Bueno este proyecto no me lo propusieron.. solo me comentaron si era capáz de hacerlo... y pues dije "será muy dificil?"... como no lo sabría si no lo intentaba pues me decidí y empesé de inmediato a trabajar en él...

Lo que debe hacer la aplicación es lo siguiente:

Debe ser un programa que pueda buscar información de los archivos que existe en un ordenador de cierta persona.... la forma en que debe buscar la información es a través de alguna frase o palabra que el usuario proporcione, y debe buscar en sus ficheros esa palabra y no me especificaron en que formatos están los ficheros... pues supongo que los mas usados son el .doc y el .pdf en fin decidí basarme en esos formatos e investigar un poco... y pues hasta ahorita la aplicación es capáz de abrir ambos formatos de archivos y de buscar si el fichero contiene la frase que el usuario indique... y en la parte central arroja la ruta de los ficheros que sí contiene la frase en cuestión... en la parte inferior arroja la ruta de los ficheros que presentaron problemas al tratar de ser procesados....

bueno en mas o menos una semana es todo lo que llevo... cualquier crítica es bienvenida... por favor si hay alguien interesado en ayudar adelante con mucho gusto trabajaremos XD.....

por cierto para que les funcione el jar tienen que bajarse unas librerias que les voy a dejar en la seccion Librerias y meterlas en el directorio de la JRE, en Linux yo lo tengo en el /usr/lib/jvm/java-6-sun-1.6.0.07/jre/lib/ext pero no estoy seguro en Uindous supongo que es en C:\Archivos de Programas/jvm/java-6-sun-1.6.0.07/jre/lib/ext

por cierto creo que hay un pequeño error en el codigo, es que no sabia si es C:\ o C:/ y creo que usé C:/ pero me parece bede ser C:\ bueno eso lo pueden corregir...

Download Buscador_0.1.1.jar

Buscador_0.1.1

Read full story
 

Pyr0S-9889 © 2008 Business Ads Ready is Designed by Ipiet Supported by Tadpole's Notez