domingo, 10 de febrero de 2013

Fichero log: redirigir la salida de Java a un fichero

Hoy vamos a incluir cómo hacer un método que redirija la salida de Java a archivo para hacer un archivo log. El proceso es tan sencillo como utilizar dos métodos de la clase System: setErr y setOut, pasando como parámetro un objeto de tipo PrintStream.

El método propuesto es el siguiente:

public static void standardIO2File(String fileName){

        if(fileName.equals("")){//Si viene vacío usamos este por defecto

            fileName="C:\\javalog.txt";

        }

        try {

            //Creamos un printstream sobre el archivo permitiendo añadir al

            //final para no sobreescribir.

            PrintStream ps = new PrintStream(new BufferedOutputStream(

                    new FileOutputStream(new File(fileName),true)),true);

            //Redirigimos entrada y salida estandar

            System.setOut(ps);

            System.setErr(ps);

        } catch (FileNotFoundException ex) {

            System.err.println("Se ha producido una excepción FileNotFoundException");

        }

    }

Como veis el método es muy sencillo: pasamos como parámetro un String con el nombre (y ruta) del fichero y creamos sobre él un PrintStream que pasaremos como argumento a los métodos setOut y setErr. Estos métodos redirigen al fichero la salida estándar y la de error. Podemos codificar el método con dos argumentos para redirigir la salida estándar a un fichero y la de error a otro, eso queda a gusto del consumidor.

JailBreak Untethered para iOS 6.0, 6.0.1, 6.0.2 y 6.1

Por fin ha llegado, se ha hecho esperar pero ya está listo el Jailbreak Untethered para iOS 6 en todos los dispositivos.

El equipo de evad3rs ha desarrollado una herramienta de Jailbreak sencilla e intuitiva que han llamado evasi0n.

Tenéis los enlaces disponibles en la página del grupo (http://evasi0n.com/):


La lista de dispositivos soportados es la siguiente:

  • iPhone 5
  • iPhone 4S
  • iPhone 4
  • iPhone 3GS
  • iPad 4
  • iPad 3
  • iPad 2
  • iPad mini
  • iPod touch 5
  • iPod touch 4
  • Apple TV 2 (except third-generation)

  • Recordad que es un proceso no autorizado por Apple, seréis los responsables de los problemas que puedan surgir en el dispositivo.

    Concept IdeaCentre de Conceptronic

    Recientemente he encontrado esta idea conceptual de Conceptronic, se me cae la baba sólo de imaginar posibilidades!


    Se trata de un tablet de 27 pulgadas que puede utilizarse como "mesa multimedia"

     
     
    ¿Qué os parece? Si queréis saber algo más podéis consultar la página de Conceptronic en el siguiente enlace:

    viernes, 8 de febrero de 2013

    Argumentos en línea de comandos con NetBeans

    Si programáis en Java es bastante probable que utilicéis un IDE integrado como Eclipse o NetBeans. Yo utilizo este último y hace poco tuve que trastear con él para encontrar algo trivial: cómo pasarle parámetros en línea de comandos a un proyecto.

    En realidad se trata de un proceso muy sencillo. En primer lugar creamos una clase sencillita de Java para ilustrar el ejemplo. Se trata de una clase que imprime el primer argumento recibido en línea de comando por pantalla:


    Si ejecutamos el proyecto nos aparecerá en blanco y el mensaje "Generación Correcta (...)". Si generamos el .jar podemos ejecutarlo desde la consola del sistema operativo y pasar argumentos con el comando "java -jar nombreArchivo.jar [argumentos]".

    Si queremos ejecutarlo desde NetBeans con argumentos sólo tenemos que abrir el menú contextual (botón derecho del ratón) sobre el proyecto > Establecer la Configuración > Personalizar:


    Se abre un diálogo modal con el campo "Argumentos", el cual podemos rellenar como si se tratara de la línea de comandos.



    Pulsamos aceptar y cuando ejecutamos el proyecto ya podemos ver la salida del mismo:


    Apple trabaja en pantallas que integran carga por energía solar

    Muchos medios de comunicación se han hecho eco de la noticia que publica Europa Press esta mañana: "Apple trabaja en pantallas que integran carga por energís solar".

    Al parecer Apple ha registrado en la oficina de patentes de EEUU unos paneles solares diseñados para iPhone, iPad e iPod que pueden ser incluidos directamente en la pantalla táctil del dispositivo.



    La patente data del 2008 lo que indica que la marca de la manzana lleva tiempo madurando la idea de integrar esta tecnología en sus dispositivos móviles. De ser cierto aumentaría de forma considerable la duración de la batería del dispositivo y la portabilidad del mismo (verdadero talón de aquiles de la mayoría de dispositivos móviles modernos), además de proveer de una energía mucho más limpia y sostenible al aparato.

    En cualquier caso la existencia de la patente no garantiza su incorporación a sus productos, aunque esperamos que sea factible!

    (Enlace a la patente)

    Recomendaciones de Alcasoft