Categorías destacadas
programacion php    
Artículo
2
¡votar!

 Trabajo en Red


Cambios en el JDK 1.1: El Ejemplo ReverseTest

El ejemplo ReverseTest tiene tres problemas.

Primero, utiliza el método DataInputStream.readLine que está caducado en el JDK 1.1 porque no convierte correctamente los bytes en caracteres. La mayoría de los programas que utilizan DataInputStream.readLine pueden hecer un sencillo cambio para utilizar el mismo método de la nueva clase BufferedReader. Simplemente reemplaza este código:

DataInputStream d = new DataInputStream(in);

por éste otro:

BufferedReader d = new BufferedReader(new InputStreamReader(in));

ReverseTest es uno de esos programas en los que se puede realizar este sencillo cambio.

Segundo, ReverseTest crea explícitamene un PrintStream para escribir en una URLConnection. Utilizar un PrintStream ha caducado en favor de PrintWriter.

Y finalmente, ReverseTest debe llamar al nuevo setDoOutput en su URLConnection para poder escribir en la conexión.

Aquí tienes la nueva versión de ReverseTest que corrige estos problemas:

import java.io.*;
import java.net.*;

public class ReverseTest {
    public static void main(String[] args) {
        try {
            if (args.length != 1) {
                System.err.println("Usage:  java ReverseTest string_to_reverse");
                System.exit(1);
            }
            String stringToReverse = URLEncoder.encode(args[0]);

            URL url = new URL("http://java.sun.com/cgi-bin/backwards");
            URLConnection connection = url.openConnection();
	    connection.setDoOutput(true);

            PrintWriter writer = new PrintWriter(connection.getOutputStream());
            writer.println("string=" + stringToReverse);
            writer.close();

            BufferedReader reader = new BufferedReader(
			new InputStreamReader(connection.getInputStream()));
            String inputLine;

            while ((inputLine = reader.readLine()) != null) {
                System.out.println(inputLine);
            }
            reader.close();
        } catch (MalformedURLException me) {
            System.err.println("MalformedURLException: " + me);
        } catch (IOException ioe) {
            System.err.println("IOException: " + ioe);
        }
    }
}
Publicado por:
Ricard Lou Torrijos
Recomendar
a un amigo
Compartir
en redes
 
Comentarios
 
BBDD
Entornos de desarrollo
Entretenimiento
Herramientas
Internet
Lenguajes de script
Lenguajes imperativos
Lenguajes orientados a objeto
Otros lenguajes
Plataformas
Teoría
Varios
Copyright © 1998-2011 Programación en Castellano. Todos los derechos reservados
Datos legales | Politica de privacidad | Contacte con nosotros | Publicidad

Diseño web y desarrollo web. Un proyecto de los hermanos Carrero.

Red internet:
Juegos gratis | Servidores dedicados
Más internet: Password | Directorio de weblogs | Favicon