elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Script
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Script  (Leído 2,897 veces)
yonosoyelmejor

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Script
« en: 2 Noviembre 2009, 12:31 pm »

Hola,tengo una duda y bueno queria exponerosla a ver si podrias ayudarme.Tengo un script de R,por si alguien no lo conoce es un paquete estadistico,es decir tengo un ejemplo.R,necesito saber como puedo instanciar ese script desde Java para poder asociarselo a un boton de mi entorno grafico.He estado mirando y he conseguido lanzar la consola pero me haria falta que enviase un comando.El codigo que utilizo yo es:
Código:
Process p = Runtime.getRuntime().exec ("C:/Archivos de programa/R/R-2.9.2/bin/Rgui.exe"); 

Espero haberme explicado medianamente bien.

Gracias por la atencion y espero vuestras sugerencias.

Saludos.


En línea

kinos

Desconectado Desconectado

Mensajes: 104



Ver Perfil
Re: Script
« Respuesta #1 en: 2 Noviembre 2009, 22:26 pm »

A ver si te sirve esto, ten en cuenta la rutas también para que no te hagas un lio. Para ejecutar un script supongo que será igual, en vez de programa1 pones el nombre del script no?

Código
  1.  
  2. try{
  3.  //abrimos un programa
  4.  Process p = Runtime.getRuntime().exec("programa1"); //tambien le puedes poner argumentos
  5.  //Process p = Runtime.getRuntime().exec("programa1 arg1");
  6.  int exitCode = p.waitFor();
  7.  System.out.println(exitCode);
  8.  p = Runtime.getRuntime().exec("programa2");//abrimos otro
  9.  if (exitCode != 0)
  10.  {
  11.   //si sale mal... aqui deberias poner algo
  12.    //..
  13.    p = Runtime.getRuntime().exec(cmd);
  14.  }
  15.  }catch (IOException e){
  16.    e.printStackTrace();
  17.  }catch (InterruptedException ee){
  18.      ee.printStackTrace();
  19.  
  20.  }
  21.  
  22.  


« Última modificación: 2 Noviembre 2009, 22:28 pm por kinos » En línea

yonosoyelmejor

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Script
« Respuesta #2 en: 3 Noviembre 2009, 12:56 pm »

Pero con este codigo abro dos programas no??En este caso me haria falta.Abrir la consola de un programa(en mi caso R) y poder pasarle el comando source("C://...") y ya este comando es el que llama a mi script,es decir yo llamo a la consola R le paso el comando y el lo carga.Espero haberme explicado medianamente.Lo mismo es mas sencillo pero es que no se me ocurre otra forma...Estoy ya tirandome de los pelos xDD

Un saludo y gracias.
En línea

kinos

Desconectado Desconectado

Mensajes: 104



Ver Perfil
Re: Script
« Respuesta #3 en: 3 Noviembre 2009, 17:04 pm »

Si, abre dos programas distintos, lo he puesto por poner un ejemplo.
Prueba ha escribir:

Process p = Runtime.getRuntime().exec("cmd /c nombreScriptOComando");

No tengo ni idea de que ocurrirá pero para probar y evitar problemas de rutas deja el script en c:/ por si te da problemas con los espacios de la ruta. Luego tu verás si te funciona con la ruta.

Mira si haces esto te sale la consola y una pausa (cuando termine se cerrará):

Process p = Runtime.getRuntime().exec("cmd /c pause");
//no he probado el comando entero, solo he probado "inicio" -> "ejecutar" -> cmd /c pause

Suerte.
En línea

yonosoyelmejor

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Script
« Respuesta #4 en: 4 Noviembre 2009, 10:08 am »

El problema reside en que necesito abrir primero la consola del programa,ya que el R lleva una consola asociada y despues enviar ese comando a esa consola...por eso no puedo utilizar la de windows.No obstante gracias por interesarte.

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines