Manual de aplicaciones javas

Solo disponible en BuenasTareas
  • Páginas : 7 (1586 palabras )
  • Descarga(s) : 4
  • Publicado : 21 de abril de 2010
Leer documento completo
Vista previa del texto
En muchas ocasiones necesitamos representar una gran cantidad de datos con un JTable con un scroll muy lento y un gran consumo de memoria y recursos.

A continuación el siguiente manual que explica como realiar esta tarea de la forma más optima posible. Este manual es básico para utiizar de forma adecuada un gran volumen de datos en una aplicación en java JTable
Publicado por Ping en 05:481 comentarios
Etiquetas: ejemplos, JTable
lunes 26 de marzo de 2007
Numero de cifras
Este ejercicio en java divide un números sucesivamente hasta conseguir
el número de cifras que tiene un entero.

Por ejemplo si tu introduces el número 3454 el programa te devolverá
un 4.
`
import java.io.*;

class Cifras {

static int total=0;
static int x=0;

static intnumCifras(int x){
while(x!=0){
x=x/10;
total+=1; //incrementamos el contador
}
return total;
}

public static void main(String[]args) throws IOException{
//BufferedReader para leer de consola
BufferedReader leer = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Introduce un nu4mero:");
//leemos una línea como string
String linea = leer.readLine();/*Convertirmos el string a un número. Podrías poner
*un try y catch para comprobrar errores al convertirlo.Por
ejemplo si introducen un string/
x= Integer.parseInt(linea);
System.out.println("El numero de cifras es:");
//Imprimimos el número de líneas
System.out.println(numCifras(x));
}
} `
Publicado por Ping en 03:45 0 comentarios
Etiquetas: ejemplos, ejercicios
Buscar en archivosjava
Barras de progreso JProgressBar y aplicaciones gráficas

Este ejemplo busca coincidencias en los archivos a partir de un directorio
especificado por el usuario.

Problema:
Si tenemos una aplicaciones que realiza un proceso que consume un tiempo relativamente largo, es bueno hacer saber al usuario de la aplicacion que la tarea esta siendo procesada y mas o menos el tiempo quequeda, lo tipico del mensaje:'El proceso va por el 20%' por ejemplo.

Las librerias de Swing en java, tiene unos mecanismos para mostrar este progreso, vamos a hacer un ejemplo de una aplicacion que busca una cadena de texto en todos los ficheros de un directorio espedificado.

Fuente original: telepolis.com
`
import java.awt.GridLayout;
import java.awt.Cursor;
importjava.awt.event.*;
import java.util.*;
import java.io.*;
import javax.swing.*;
import java.lang.reflect.InvocationTargetException; public class ProgressDemo {

String startdir; // directorio de busqueda
String patt; // lo que vamos a buscar
JTextArea outarea; // output area for file pathnames
JFrame frame; // frame
JProgressBar progbar; // barra de progreso
JLabel fileslab; // numero de ficherosencontrado
boolean search_flag; // true si la busqueda esta en progreso

class Search extends Thread
{

// actualiza el GUI
void doUpdate(Runnable r) {
try {
SwingUtilities.invokeAndWait(r);
}
catch (InvocationTargetException e1) {
System.err.println(e1);
}
catch (InterruptedException e2) {
System.err.println(e2);
}
}
// nos da la lista de los ficheros de undirectorio
void getFileList(File f, List list) {

// recursividad si hay un directorio dentro del mismo
if (f.isDirectory()) {
String entries[] = f.list();
for (int i = 0; i < entries.length; i++) {
getFileList(new File(f, entries[i]),
list);
}
}

// para fciheros , se añaden a la lista y se actualiza la barra de progreso
else if (f.isFile()) {
list.add(f.getPath());
final intsize = list.size();
if (size % 100 != 0) {
return;
}
doUpdate(new Runnable() {
public void run() {
progbar.setValue(size % 1000);
}
});
}
}

// comprueba que el fichero contiene la cadena
boolean fileMatch(String fn, String patt) {
boolean found = false;

try {
FileReader fr = new FileReader(fn);
BufferedReader br = new BufferedReader(fr);
String str;
while ((str =...
tracking img