⑴ java的API中有哪些常用的包
Application Programming Interface 應用程序編程介面,Java的api就多的數不清了,平時編程用的都是API。
⑵ 如何使用Java Print Service API在IBM i上列印文檔
具體步驟如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.print.Doc;
import javax.print.DocFlavor;
import javax.print.DocPrintJob;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.SimpleDoc;
import javax.print.attribute.DocAttributeSet;
import javax.print.attribute.HashDocAttributeSet;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.swing.JFileChooser;
public class PrintDemo {
public static void main(String[] args) {
JFileChooser fileChooser = new JFileChooser(); // 創建列印作業
File file = new File("f:/111.txt"); // 獲取選擇的文件
// 構建列印請求屬性集
HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
// 設置列印格式,因為未確定類型,所以選擇autosense
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
// 定位默認的列印服務
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
InputStream fis = null;
try {
DocPrintJob job = defaultService.createPrintJob(); // 創建列印作業
fis = new FileInputStream(file); // 構造待列印的文件流
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
⑶ java如何應用API
在我們開發中,對於任何操作,信息中時間是非常重要的一點,我們可以根據時間判斷發生的時間,時間可以記錄非常重要的信息;
在Java中,專門給我們提供了處理時間的API,根據Java封裝的時間類,我們可以很方便的操作時間信息;
在處理時間的時候,有個概念我們經常會用到,就是時間戳,時間戳表示的是從1970年01月01日00時00分00秒起至現在的總毫秒數,我們可以將時間戳與時間進行隨意的替換;
Java中處理時間的類是java.util.Date,這個類有常用的兩個構造方法,一個是無參的獲取的當前時間的對象,一個是出入一個時間戳,獲取該時間戳對應的時間,JDK中這個類還提供了一些其他的構造方法,比如傳入年月日等多個參數獲取對應的時間,但是這些構造方法JDK中已經不建議使用了,需要注意的是,使用年月日參數(過時的構造方法)創建對象的時候,傳入的年的參數需要減去1900,因為JDK中默認處理將年份增加了1900;
Java中還提供了一個類SimpleDateFormat可以方便我們將Date與字元串進行轉換,Date類中重寫了toString方法,所以當列印date的時候,會按照重寫的格式進行列印,但是有時候我們需要定義自己的格式進行輸入輸出,這時候就可以使用SimpleDateFormat類來進行自定義;
創建SimpleDateFormat對象的時候,需要傳入一個參數,我們可以按照自己想要的格式進行編寫,例如」yyyy-MM-dd hh:mm:ss:SSS」, 這樣輸出的格式就會是年-月-日 時:分:秒;我們可以隨意調整列印的順序與格式;其中yyyy表示年份,MM表示月份(大寫),dd表示日期,hh表示小時,mm表示分鍾(小寫),ss表示秒(小寫),SS表示毫秒(大寫);除了這些格式外,還可以列印到時區,周幾,一周第幾天等信息;
除了可以將時間對象轉換成字元串,SimpleDateFormat也可以將字元串轉按照相應的格式成對應的時間;
⑷ java實現列印功能需要的jar包有哪些 實現預覽需要的功能有哪些
java實現列印功能不需要導包,javax.print.*; 這個包下都是實現列印和預覽的類.你打開API ,在搜索欄里輸入列印搜搜就可以看到一些列印的介面 .至於怎麼實現列印和預覽請對著API看好嗎?
⑸ java 調用列印機API無法列印,但是直接列印可以,請問有人遇到過這樣的問題嗎
代碼邏輯有問題:
if (printService.length > 0) {
// 這個地方應該判斷activePrintService != null,
因為你是用的列印機是activePrintService來列印,
而不是判斷系統有有列印機就調用activePrintService來列印。
⑹ java api如何獲取kafka所有Topic列表(TopicCommand,只列印),需要List
在運行/調試設置中,編輯配置對話框中有「Main」這個選項卡,我們可以勾選「Stop in main」這個復選框。如果選中,那麼在調試一個基於main方法的Java程序時,程序會在main方法第一行位置便停止執行。
⑺ java如何實現列印出庫單的功能呀
列印值的是連接列印機來列印吧?
可以在後台對出庫單進行拼裝顯示到頁面,然後利用IE提供的方法進行列印當前頁來列印。。。
還有就是可以利用商業軟體來實現,實現方式也和IE差不多,後台拼裝數據 前台調用插件列印數據,相比ie要更近靈活,方便 (IE列印會彈出一個選擇框讓用戶選擇)
我推薦你使用lodop 找下這個。免費的 開發者也有提供API (如果商用建議購買 也很便宜)
⑻ 如何用Java printer service API 記錄列印歷史
在我們的實際工作中,經常需要實現列印功能。但由於歷史原因,Java提供的列印功能一直都比較弱。實際上最初的jdk根本不支持列印,直到jdk1.1才引入了很輕量的列印支持。所以,在以前用Java/Applet/JSP/Servlet設計的程序中,較復雜的列印都是通過調用ActiveX/OCX控制項或者VB/VC程序來實現的,非常麻煩。實際上,SUN公司也一直致力於Java列印功能的完善,而Java2平台則終於有了一個健壯的列印模式的開端,該列印模式與Java2D圖形包充分結合成一體。更令人鼓舞的是,新發布的jdk1.4則提供了一套完整的"Java 列印服務 API" (Java Print Service API)。Java的列印API主要存在於java.awt.print包中。而jdk1.4新增的類則主要存在於javax.print包及其相應的子包javax.print.event和javax.print.attribute中。其中javax.print包中主要包含列印服務的相關類,而javax.print.event則包含列印事件的相關定義,javax.print.attribute則包括列印服務的可用屬性列表等。
⑼ java 調用列印機API無法列印的問題,請問找到解決方案了嗎
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.print.Book;
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
public class PrintTest4 implements Printable{
/**
* @param Graphic指明列印的圖形環境
* @param PageFormat指明列印頁格式(頁面大小以點為計量單位,1點為1英才的1/72,1英寸為25.4毫米。A4紙大致為595×842點)
* @param pageIndex指明頁號
*/
@Override
public int print(Graphics graphics, PageFormat pageFormat, int pageIndex)
throws PrinterException {
System.out.println(">>>>>>>>>>>>>>>>>>>>>>指定頁號:"+pageIndex);
Component c = null;
//print string
String str = "中華民族是勤勞、勇敢和富有智慧的偉大民族。";
//轉換成Graphics2D
Graphics2D g2 = (Graphics2D) graphics;
//設置列印顏色為黑色
g2.setColor(Color.black);
//列印起點坐標
double x = pageFormat.getImageableX();
double y = pageFormat.getImageableY();
switch(pageIndex){
case 0:
//設置列印字體(字體名稱、樣式和點大小)(字體名稱可以是物理或者邏輯名稱)
//Java平台所定義的五種字體系列:Serif、SansSerif、Monospaced、Dialog 和 DialogInput
Font font = new Font("新宋體", Font.PLAIN, 9);
g2.setFont(font);//設置字體
//BasicStroke bs_3=new BasicStroke(0.5f);
float[] dash1 = {2.0f};
//設置列印線的屬性。
//1.線寬 2、3、不知道,4、空白的寬度,5、虛線的寬度,6、偏移量
g2.setStroke(new BasicStroke(0.5f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 2.0f, dash1, 0.0f));
//g2.setStroke(bs_3);//設置線寬
float heigth = font.getSize2D();//字體高度
System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>x="+x);
// -1- 用Graphics2D直接輸出
//首字元的基線(右下部)位於用戶空間中的 (x, y) 位置處
//g2.drawLine(10,10,200,300);
Image src = Toolkit.getDefaultToolkit().getImage("D:/背景圖片/yesorno.jpg");
//D:\EclipseWorkSpace3.1\Kfc-wuxi\WebRoot\image\KFC.jpg
g2.drawImage(src,(int)x,(int)y,c);
int img_Height=src.getHeight(c);
int img_width=src.getWidth(c);
//System.out.println("img_Height="+img_Height+"img_width="+img_width) ;
g2.drawString(str, (float)x, (float)y+1*heigth+img_Height);
g2.drawLine((int)x,(int)(y+1*heigth+img_Height+10),(int)x+200,(int)(y+1*heigth+img_Height+10));
g2.drawImage(src,(int)x,(int)(y+1*heigth+img_Height+11),c);
return PAGE_EXISTS;
default:
return NO_SUCH_PAGE;
}
}
public static void main(String[] args) {
//通俗理解就是書、文檔
Book book = new Book();
//設置成豎打
PageFormat pf = new PageFormat();
pf.setOrientation(PageFormat.PORTRAIT);
//通過Paper設置頁面的空白邊距和可列印區域。必須與實際列印紙張大小相符。
Paper p = new Paper();
p.setSize(590,840);//紙張大小
p.setImageableArea(10,10, 590,840);//A4(595 X 842)設置列印區域,其實0,0應該是72,72,因為A4紙的默認X,Y邊距是72
pf.setPaper(p);
//把 PageFormat 和 Printable 添加到書中,組成一個頁面
book.append(new PrintTest4(), pf);
//獲取列印服務對象
PrinterJob job = PrinterJob.getPrinterJob();
//設置列印類
job.setPageable(book);
try {
//可以用printDialog顯示列印對話框,在用戶確認後列印;也可以直接列印
boolean a=job.printDialog();
if(a){
job.print();
}
} catch (PrinterException e) {
e.printStackTrace();
}
}
}
⑽ java api的解釋、介紹
簡單的講,api就是一個幫助文檔,讓您能快速了解java的屬性,方法。加入想對字元串進行操作,就可以去api中查看String的方法,裡面會有每個方法的用法,返回值等等。。
Java API通過支持平台無關性和安全性,使得Java適應於網路應用。Java API是運行庫的集合,它提供了一套訪問主機系統資源的標准方法。運行Java程序時,虛擬機裝載程序的class文件所使用的Java API class文件。所有被裝載的class文件(包括從應用程序中和從Java API中提取的)和所有已經裝載的動態庫(包含本地方法)共同組成了再Java虛擬機上運行的整個程序。 在一個平台能偶支持Java程序以前,必須在這個特定平台上明確地實現API的功能。為訪問主機上的本地資源,Java API調用了本地方法。由於Java API class文件調用了本地方法,Java程序就不需要再調用它們了。通過這種方法,Java API class文件為底層主機提供了具有平台無關性、標准介面的Java程序。對Java程序而言,無論平台內部如何,Java API都會有同樣的表現和可預測的行為。正是由於在每個特定的主機平台上明確地實現了Java虛擬機和Java API,因此,Java程序自身就能夠成為具有平台無關性的程序。 Java API在Java安全性模型方面也有貢獻。當Java API的方法進行任何有潛在危險的操作(比如進行本地磁碟寫操作)之前,都會通過查詢訪問控制器來檢驗是否得到了授權。訪問控制器是一個類,該類用來執行棧檢驗,已決定是否允許某種操作。