千家信息网

JAVA如何实现连接本地打印机并打印文件

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,小编给大家分享一下JAVA如何实现连接本地打印机并打印文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现代码一impo
千家信息网最后更新 2025年11月07日JAVA如何实现连接本地打印机并打印文件

小编给大家分享一下JAVA如何实现连接本地打印机并打印文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

实现代码一

import javax.print.*;import javax.print.attribute.DocAttributeSet;import javax.print.attribute.HashDocAttributeSet;import javax.print.attribute.HashPrintRequestAttributeSet;import javax.print.attribute.PrintRequestAttributeSet;import java.io.File;import java.io.FileInputStream;public class PrintDemo1 {  public void printPdf(String fileName) {    //构造一个文件选择器,默认为当前目录    File file = new File(fileName);//获取选择的文件    //构建打印请求属性集    PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();    //设置打印格式,因为未确定文件类型,这里选择AUTOSENSE    DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;    //查找所有的可用打印服务    PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);    //定位默认的打印服务    //PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();    // 显示打印对话框    PrintService service = ServiceUI.printDialog(null, 200, 200, printService, defaultService, flavor, pras);    if (service != null) {      try {        DocPrintJob job = service.createPrintJob(); // 创建打印作业        FileInputStream fis; // 构造待打印的文件流        fis = new FileInputStream(file);        DocAttributeSet das = new HashDocAttributeSet();        Doc doc = new SimpleDoc(fis, flavor, das);        job.print(doc, pras);      } catch (Exception e) {        e.printStackTrace();      }    }  }  public static void main(String args[]) {    PrintDemo1 pic = new PrintDemo1();    pic.printPdf("F:\\java资源2\\Docker视频教程\\赠送3-从Docker到Kubernetes之技术实战\1.为什么你需要学习Docker\1.pdf");  }}

代码二

package com.iba.cxx.adm.controller;import javax.print.*;import javax.print.attribute.DocAttributeSet;import javax.print.attribute.HashDocAttributeSet;import javax.print.attribute.HashPrintRequestAttributeSet;import javax.swing.*;import java.io.File;import java.io.FileInputStream;/** * Created by Administrator on 2017/9/8 0008. */public class TestController {  public static void main(String[] args) {    JFileChooser fileChooser = new JFileChooser(); //创建打印作业    int state = fileChooser.showOpenDialog(null);    if(state == fileChooser.APPROVE_OPTION){      // File file = new File("D:/haha.txt"); //获取选择的文件      File file = fileChooser.getSelectedFile();//获取选择的文件      //构建打印请求属性集      HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();      //设置打印格式,因为未确定类型,所以选择autosense      DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;      //查找所有的可用的打印服务      PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);      //定位默认的打印服务      PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();      //显示打印对话框      PrintService service = ServiceUI.printDialog(null, 200, 200, printService,          defaultService, flavor, pras);      if(service != null){        try {          DocPrintJob job = service.createPrintJob(); //创建打印作业          FileInputStream fis = new FileInputStream(file); //构造待打印的文件流          DocAttributeSet das = new HashDocAttributeSet();          Doc doc = new SimpleDoc(fis, flavor, das);          job.print(doc, pras);        } catch (Exception e) {          e.printStackTrace();        }      }    }  }}

以上是"JAVA如何实现连接本地打印机并打印文件"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 选择 服务 篇文章 作业 打印机 代码 内容 对话框 属性 格式 类型 学习 定位 对话 不怎么 大部分 实战 技术 教程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 维护网络安全留言 sql配置管理器服务器名称 国产 嵌入式数据库 速率 sr588服务器找不到硬盘 数据库两个字段中内容能不能相同 网络安全教育主题班会小班 东莞支付软件开发公司 群星怎么服务器联机 互联网科技只不过是二手车平台 苏州通信网络技术有限公司 利用数字技术建立非遗数据库 csgo登不上安全服务器 数据库技术与项目课后答案 DELL服务器类型 财务软件数据库跟软件分开卖吗 西安软件开发公司融资 郑州软件开发市场价 学软件开发收费 国家信息网络安全监察局 a股网络安全概念股 老年人社会调查数据库 网易邮箱企业邮箱服务器 津南区数据网络技术售后服务 马山县软件开发 护苗网络安全系统教程 海城市亿融网络技术服务有限公司 wind数据库怎么找公司年报 数据库建表代码唯一非空 卡巴斯基数据库怎么升级 吕梁软件开发设计
0