pues si es en linux es bien facil
si es en windows no se :S
esta forma deberia de funcionar en linux o windows
PrintService printService = PrintServiceLookup.lookupDefaultPrintService();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
DocPrintJob docPrintJob = printService.createPrintJob();
String string="Texo que se imprime\n";
string+="en la impresora predeterminada\n";
string+="fin del ejemplo\n";
Doc doc=new SimpleDoc(string.getBytes(),flavor,null);
try {
docPrintJob.print(doc, null);
docPrintJob.wait();
}
catch (PrintException e) {
System.out.println("Error al imprimir: "+e.getMessage());
}
catch(Exception ex){}
System.out.println("FIN DE IMPRESION");
este solo sirve en linux
Process p = Runtime.getRuntime().exec ("lpr -P nombre_impresora nombrearchivo");