Me preguntaba si había alguna relación entre los parámetros del método principal String[] args
y la posibilidad de abrir archivos con un programa especificado. Teniendo en cuenta que escribí un sencillo programa que escribe cada cuerda de args
, a continuación, se abrieron algunos archivos con este programa (Estoy utilizando Windows).
Esto es lo que sucedió:
no importa qué tipo de archivo que abrí con mi programa (click derecho -> Abrir con ...), args
contenía una sola cuerda que era ruta completa del archivo.
Cuando me encontré con el programa en sí mismo, args
era de longitud 0.
Ahora mi pregunta es: ¿existen otras cadenas de texto que pueden estar contenidos en args
, o sería el siguiente código siempre trabajar sin lugar a dudas? (Quiero usar esto en Windows, no jugar con él comojava MyProgram 1 2 3 "test"
public static void main(String[] args) {
initProgram();
if (args.length != 0) { //file opened with program
loadFile(new File(args[0]));
}
}
Gracias por sus respuestas y por favor ser paciente con mi Inglés.
Al igual que Marcos Vasconcelos asumió: mediante la apertura de múltiples archivos a la vez args
contendrá todas las rutas de los ficheros trató de abrir, por lo que args
puede ser más grande que una sola cadena. Su longitud depende de la cantidad de archivos que desean abrir con el programa.