codigo URL
Hola tengo ciertas preguntas acerca de este codigo.
Mis inquietudes las he puesto como comentario para que se puedan dar cuenta.
import java.io.*;
import java.net.*;
class WebDownload{
public static void main(String[] arg){
URL url;
URLConnection uc;/
InputStream is;
try{
url= new URL(arg[0]);// Que excepción puede ser lanzada en esta lÃnea?
uc=url.openConnection();//. Que excepción puede ser lanzada en esta lÃnea?
is=uc.getInputStream();// Que excepción puede ser lanzada en esta lÃnea?
int i=is.read();// Que excepción puede ser lanzada en esta lÃnea?
while(i>0){// Cuando acaba el ciclo?
System.out.print((char)i);//. Que pasa si no se hace cast
i=is.read();
}
}catch(MalformedURLException e){
System.err.println("URL mal escrito : "+e);// En que caso se llega a esta lÃnea?
MalformedURLException: Probablemente la URL no esta bien especificada, por lo q no se puede encontrar ningún protocolo legal.
}catch(IOException e){
System.err.println("Error de entrada/salida: "+e);//14. En que caso se llega a esta lÃnea?
}
}
}
Saludos ...
Mis inquietudes las he puesto como comentario para que se puedan dar cuenta.
import java.io.*;
import java.net.*;
class WebDownload{
public static void main(String[] arg){
URL url;
URLConnection uc;/
InputStream is;
try{
url= new URL(arg[0]);// Que excepción puede ser lanzada en esta lÃnea?
uc=url.openConnection();//. Que excepción puede ser lanzada en esta lÃnea?
is=uc.getInputStream();// Que excepción puede ser lanzada en esta lÃnea?
int i=is.read();// Que excepción puede ser lanzada en esta lÃnea?
while(i>0){// Cuando acaba el ciclo?
System.out.print((char)i);//. Que pasa si no se hace cast
i=is.read();
}
}catch(MalformedURLException e){
System.err.println("URL mal escrito : "+e);// En que caso se llega a esta lÃnea?
MalformedURLException: Probablemente la URL no esta bien especificada, por lo q no se puede encontrar ningún protocolo legal.
}catch(IOException e){
System.err.println("Error de entrada/salida: "+e);//14. En que caso se llega a esta lÃnea?
}
}
}
Saludos ...
Hola
No sé si te refieres a excepciones chequeadas (aquellas que no descienden de RuntimeException) o no chequeadas, asà que procuraré pillarlas todas.
import java.io.*;
import java.net.*;
class WebDownload {
public static void main(String[] arg) {
URL url;
URLConnection uc;
InputStream is;
try {
url= new URL(arg[0]); // Que excepción puede ser lanzada en esta lÃnea?
// MalformedURLException por el constructor de URL si se desconoce el protocolo
// ArrayIndexOutOfBoundsException si no se pasan argumentos
uc = url.openConnection(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S
is = uc.getInputStream(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S mientras se crea el InputStream
// UnknownServiceException si el protocolo no soporta entrada
int i = is.read(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S
while (i > 0) { // Cuando acaba el ciclo?
// Cuando se encuentre el primer byte 0 en el InputStream
// La comparación deberÃa hacerse con -1, que es lo que devuelve read()
// cuando se llega al final del stream
System.out.print((char)i); // Que pasa si no se hace cast?
// Que print imprime el valor numérico del byte leÃdo, en lugar del carácter
i = is.read();
}
}
catch (MalformedURLException e) {
System.err.println("URL mal escrito : " + e);// En que caso se llega a esta lÃnea?
// Tú mismo lo dices: desde el constructor de URL
// MalformedURLException: Probablemente la URL no esta bien especificada, por lo q no se puede encontrar ningún protocolo legal.
}
catch (IOException e) {
System.err.println("Error de entrada/salida: " + e); // En que caso se llega a esta lÃnea?
// Desde openConnection, getInputStream o cualquiera de los dos read
}
}
}
No sé si te refieres a excepciones chequeadas (aquellas que no descienden de RuntimeException) o no chequeadas, asà que procuraré pillarlas todas.
import java.io.*;
import java.net.*;
class WebDownload {
public static void main(String[] arg) {
URL url;
URLConnection uc;
InputStream is;
try {
url= new URL(arg[0]); // Que excepción puede ser lanzada en esta lÃnea?
// MalformedURLException por el constructor de URL si se desconoce el protocolo
// ArrayIndexOutOfBoundsException si no se pasan argumentos
uc = url.openConnection(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S
is = uc.getInputStream(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S mientras se crea el InputStream
// UnknownServiceException si el protocolo no soporta entrada
int i = is.read(); // Que excepción puede ser lanzada en esta lÃnea?
// IOException si ocurre un error de E/S
while (i > 0) { // Cuando acaba el ciclo?
// Cuando se encuentre el primer byte 0 en el InputStream
// La comparación deberÃa hacerse con -1, que es lo que devuelve read()
// cuando se llega al final del stream
System.out.print((char)i); // Que pasa si no se hace cast?
// Que print imprime el valor numérico del byte leÃdo, en lugar del carácter
i = is.read();
}
}
catch (MalformedURLException e) {
System.err.println("URL mal escrito : " + e);// En que caso se llega a esta lÃnea?
// Tú mismo lo dices: desde el constructor de URL
// MalformedURLException: Probablemente la URL no esta bien especificada, por lo q no se puede encontrar ningún protocolo legal.
}
catch (IOException e) {
System.err.println("Error de entrada/salida: " + e); // En que caso se llega a esta lÃnea?
// Desde openConnection, getInputStream o cualquiera de los dos read
}
}
}