Java作為一門跨平臺(tái)開發(fā)語(yǔ)言,廣泛應(yīng)用于各個(gè)領(lǐng)域,其強(qiáng)大的下載和打印功能也備受認(rèn)可。
在Java中,下載文件的實(shí)現(xiàn)可以通過(guò)以下代碼:
public static void download(String url, String filename) throws IOException { HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection(); conn.setConnectTimeout(3000); conn.setRequestMethod("GET"); InputStream inputStream = conn.getInputStream(); byte[] data = new byte[1024]; int len = 0; OutputStream outputStream = new FileOutputStream(new File(filename)); while ((len = inputStream.read(data)) != -1) { outputStream.write(data, 0, len); } outputStream.close(); inputStream.close(); }
上述代碼使用HttpURLConnection建立了一個(gè)連接,并通過(guò)輸入流讀取內(nèi)容,將內(nèi)容以字節(jié)的形式寫入輸出流中,從而實(shí)現(xiàn)文件下載的功能。
而打印功能則可以通過(guò)使用Java打印API實(shí)現(xiàn):
PrinterJob printerJob = PrinterJob.getPrinterJob(); PageFormat pageFormat = printerJob.defaultPage(); printerJob.setPrintable(new Printable() { public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) { if (pageIndex >= 1) { return Printable.NO_SUCH_PAGE; } graphics.drawString("Hello World!", 100, 100); return Printable.PAGE_EXISTS; } }, pageFormat); boolean ok = printerJob.printDialog(); if (ok) { try { printerJob.print(); } catch (PrinterException ex) { ex.printStackTrace(); } }
上述代碼主要使用了PrinterJob和Printable這兩個(gè)類,通過(guò)Printable類的print方法實(shí)現(xiàn)打印輸出,將需要輸出的內(nèi)容以圖形的形式繪制在打印頁(yè)面上。
Java下載和打印功能的實(shí)現(xiàn),具有簡(jiǎn)單、高效、實(shí)用等特點(diǎn),同時(shí)在應(yīng)用開發(fā)中也得到了廣泛的應(yīng)用。