一个打印类,可以参考import javax.print.*; import javax.print.attribute.*; import java.io.*;public class Printing { public static void main(String args[]) throws Exception { String filename = args[0]; PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet(); DocFlavor flavor = DocFlavor.INPUT_STREAM.TEXT_HTML_UTF_8; PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras); PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService(); PrintService service = ServiceUI.printDialog(null, 200, 200, printService, defaultService, flavor, pras); if (service != null) { DocPrintJob job = service.createPrintJob(); FileInputStream fis = new FileInputStream(filename); DocAttributeSet das = new HashDocAttributeSet(); Doc doc = new SimpleDoc(fis, flavor, das); job.print(doc, pras); Thread.sleep(10000); } System.exit(0); } }
大侠,我的用这个类报这样的错啊! Exception in thread "main" java.lang.IllegalArgumentException: services must be non-null and non-empty at javax.print.ServiceUI.printDialog(Unknown Source) at Printing.main(Printing.java:15) 拜托给个解决的方案啊!
import javax.print.attribute.*;
import java.io.*;public class Printing {
public static void main(String args[]) throws Exception {
String filename = args[0];
PrintRequestAttributeSet pras =
new HashPrintRequestAttributeSet();
DocFlavor flavor = DocFlavor.INPUT_STREAM.TEXT_HTML_UTF_8;
PrintService printService[] =
PrintServiceLookup.lookupPrintServices(flavor, pras);
PrintService defaultService =
PrintServiceLookup.lookupDefaultPrintService();
PrintService service = ServiceUI.printDialog(null, 200, 200,
printService, defaultService, flavor, pras);
if (service != null) {
DocPrintJob job = service.createPrintJob();
FileInputStream fis = new FileInputStream(filename);
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
Thread.sleep(10000);
}
System.exit(0);
}
}
Exception in thread "main" java.lang.IllegalArgumentException: services must be
non-null and non-empty
at javax.print.ServiceUI.printDialog(Unknown Source)
at Printing.main(Printing.java:15)
拜托给个解决的方案啊!