Tengo, por ejemplo, el archivo .pdf
(ruta a ese archivo). ¿Cómo abrir este archivo en la aplicación predeterminada (probablemente Acrobat Reader) desde la aplicación SWT (por ejemplo, al hacer clic con el botón)?¿Cómo abrir un archivo con una aplicación predeterminada en SWT?
Respuesta
Usted debe ser capaz de usar:
Program.launch(file);
para abrir el archivo (usando la aplicación predeterminada o creador). Desde javadoc:
Inicia el ejecutable del sistema operativo asociado con el archivo o la URL (http: // o https: //). Si el archivo es ejecutable, se ejecuta el ejecutable. Tenga en cuenta que un
Display
ya debe existir para garantizar que este método arroje un resultado apropiado.
Tenga en cuenta que hay algunas peculiaridades en Program.launch()
(o al menos no eran, aunque éstos pueden haber corregido en las versiones más recientes del tiempo de ejecución.) Realmente no recuerdo los detalles de los errores, pero hacer algunas comprobaciones para evitar algunos problemas:
Si estás en una plataforma Unix, y que está especificando una ruta absoluta, puede haber problemas para abrir ese archivo. Prefijamos caminos absolutos con
/.
- para que/tmp/foo
se traduzca a/./tmp/foo
- aunque realmente no recuerdo los detalles de este error más que eso.En Windows, si está intentando abrir una ruta UNC, por ejemplo
\\server\bar
, debe envolver la cadena entre comillas dobles. Por ejemplo:Program.open("\"\\server\bar\"");
Trate Desktop.open:
Desktop.getDesktop().open(file);
Personalmente, preferiría una solución SWT sobre una AWT. El puente AWT <-> AWT generalmente no es necesario y es mejor no usarlo a menos que sea necesario. –
@PranitBauva ¿Por qué? – Baz
Tal vez esto puede ayudar a encontrar una decisión: nos encontramos con problemas de espacio PermGen mediante convocatoria Desktop.open()
- que está en AWTpackage - fuera de nuestra aplicación SWT.
Así que preferiría Program.launch()
sobre Desktop.open()
en un entorno SWT.
- 1. ¿Cómo abrir un archivo con la aplicación predeterminada en cmd?
- 2. ¿Cómo abrir un archivo en una nueva pestaña de forma predeterminada en NERDTree?
- 3. Abrir archivo en otra aplicación
- 4. Abrir archivo con la aplicación asociada
- 5. ¿Cómo se puede construir una aplicación SWT con Maven
- 6. Cómo abrir un archivo empaquetado con WinRT
- 7. Abrir un archivo PDF desde una aplicación WinJS
- 8. Eclipse: ¿Cómo solicitarle al usuario que elija una aplicación para abrir un archivo?
- 9. Establecer fuente predeterminada para SWT Shell
- 10. "Abrir con ..." un archivo en Windows, con una aplicación de pitón
- 11. Abrir un archivo de Cygwin
- 12. ¿Cómo abrir un archivo "nul"?
- 13. Crear una aplicación SWT de arquitectura múltiple con Maven
- 14. UIDocumentInteractionController Abrir archivo en una aplicación específica sin opciones
- 15. ¿Cómo abrir un archivo usando JavaScript?
- 16. Abrir archivo en la aplicación Django
- 17. activo Abrir archivo PDF en la aplicación
- 18. ¿Cómo puedo abrir un archivo resx en el editor XML de Visual Studio de forma predeterminada?
- 19. Abrir archivo con asociación
- 20. Cómo abrir un archivo .a
- 21. ¿Cómo puedo abrir un archivo HTML en el navegador predeterminado desde una aplicación Java Swing?
- 22. desactivó programáticamente una aplicación predeterminada
- 23. Abrir un archivo de texto con WPF
- 24. Abrir una ventana del explorador con el archivo designado seleccionado
- 25. Obtener ícono de la aplicación predeterminada que abre un archivo
- 26. ¿Cómo abrir un archivo en la memoria?
- 27. ¿Cómo abrir un archivo en una ruta relativa usando T4?
- 28. ¿Cómo abrir un archivo .accdb en Ubuntu?
- 29. Abrir y leer un archivo con askopenfilename
- 30. Cómo abrir un archivo csv en Android
En mi aplicación en winXp y win7 un 'Program.launch (" C: \\ dev \\ test.pdf ");' funciona bien - Acrobat Reader se abre y listo. Gracias. – marioosh
@ edward-thomson en qué paquete se encuentra la clase "Programa"? –