JAVA调用打印机打印指定文件

假如想象 提交于 2019-11-27 04:16:39
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import javax.print.Doc;
import javax.print.DocFlavor;
import javax.print.DocPrintJob;
import javax.print.PrintException;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.ServiceUI;
import javax.print.SimpleDoc;
import javax.print.attribute.DocAttributeSet;
import javax.print.attribute.HashDocAttributeSet;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
public class Testa {

    
        /**
         * 调用打印机功能
         * @author Administrator
         *
         */
        
        public static void main(String[] args) {
            DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
            PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
            PrintService []pservices = PrintServiceLookup.lookupPrintServices(flavor, aset);
            PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
            PrintService service = ServiceUI.printDialog(null, 200, 200, pservices, 
                    defaultService, flavor, aset);
            
            String fileName=  "D:" + File.separator + "zkyzl.txt" ;
            
            if(service != null){
                try {
                    DocPrintJob pj =service.createPrintJob();
                    FileInputStream fis = new FileInputStream(fileName);
                    DocAttributeSet das = new HashDocAttributeSet();
                    Doc doc = new SimpleDoc(fis, flavor, das);
                    pj.print(doc, aset);
                } catch (FileNotFoundException fe) {
                    fe.printStackTrace();
                } catch (PrintException e) {
                    e.printStackTrace();
                }
            }else {
                System.out.println("打印失败");
            }
        }
    }
View Code

 

转载于:https://www.cnblogs.com/summer520/p/3522253.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!