Imprimir archivos con java

Estoy trabajando en Java y bueno necesito al dar click en un botón se descargue un archivo que se encuentra en la base de datos que puede ser word, excel, texto o imagen y se vaya directo a la impresora sin que el usuario vea el archivo, bueno estoy probando hasta ahora con el PrintService, DocPrintJob, y el SimpleDoc puedo imprimir linea de texto pero no se como mandar a imprimir los archivos antes mencionados
Respuesta
1
Prueba con java.awt.Desktop.print(File file). Usa el print nativo del sistema operativo para imprimir un fichero. Por tanto, te recomiendo que o bien corras la app en windows, o si lo haces en linux tengas instalado el OpenOffice para poder imprimir archivos de Office (word, excel, etc).
Experto muchas gracias por tu respuesta, voy a buscar información acerca de los que me dices. ¿Por si acá no tienes algún link donde pueda encontrar ejemplos de uso?
Muchas gracias por contestar
Pues no he encontrado ningún ejemplo, pero te hago uno ahora mismo:
java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
java.io.File fichero = new java.io.File("C:/ficheros/miDocumento.doc");
if (desktop.isSupported(Desktop.Action.PRINT)){
desktop.print(fichero);
}else{
System. Out. Print("El sistema no permite imprimir usando la clase Desktop");
}
Lo he escrito sobre la marcha y no lo he compilado siquiera. Prueba y me cuentas.
Muchas gracias experto sabes que lo intente probar pero en el netbeans 6.8 no me reconoce la librería java.awt.Desktop, ya me descargue de la página de sun el java_ee_sdk-6u1-jdk-windows.exe y lo instale pero sigo con el problema voy a ver como lo puedo hacer mil gracias por tu ayuda
Imagino que tendrás que configurar NetBeans para que use el JDK que acabas de instalar. Yo uso Eclipse, por lo que no te puedo decir el lugar exacto donde se cambia la JDK a usar.
Carlos ya configure el jdk en Netbeans ya puedo usar la librería y todo pero me esta dando este error java.lang.NoClassDefFoundError: ¿java/awt/Desktop tal vez sabes a que se deba?
¿Pero no te da errores en Netbeans al escribir el código? ¿El error te da al ejecutar tu clase desde NetBeans o desde fuera? Siento no poder ayudarte más, pero como te dije yo uso Eclipse y no me se los trucos de Netbeans. Suena como si el JDK estuviese bien (puedes usar la clase Desktop), pero el JRE que usa en ejecución fuese uno más antiguo, que no traiga la clase Desktop.
Dame más pistas y a ver si lo solucionamos (y de paso aprendo algo de NetBeans). Saludos: Carlos.
Contesto tus preguntas:
Al momento de escribir el código todo bien, el error me da al ejecutar mi proyecto en netbeans.
Si el jdk esta bien pero no reconoce las librerías la verdad no sé que pasa es un error feo feo, estoy buscando a ver como setear el jre porque hasta ahora no encuentro mayor info
Gracias por tu ayuda
He buscado por internet lo que puede estar pasando, y he encontrado este post que puede que nos sea de ayuda. Echa un vistazo al menú de NetBeans "Applications/Utilities/Java Preferences" y revisa que no se esté usando el java 1.5 en vez del java 1.6
Ya me cuentas a ver que tal.
Muchas gracias ya le vi pero en el menu de netbeans no existe esa opción voy a seguir buscando mil gracias
Ok, cuando lo resuelvas no te olvides de valorar mi respuesta para que quede cerrada (es un engorro que las preguntas se queden abiertas). De paso, explica cómo lo has solucionado. Así, tu respuesta será útil para mucha otra gente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas