java生成條碼並解析條碼
package com.lyy.util; import java.awt.Frame; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import org.jbarcode.JBarcode; import org.jbarcode.encode.Code128Encoder; import org.jbarcode.encode.EAN13Encoder; import org.jbarcode.encode.EAN8Encoder; import org.jbarcode.encode.InvalidAtributeException; import org.jbarcode.encode.UPCAEncoder; import org.jbarcode.paint.EAN13TextPainter; import org.jbarcode.paint.EAN8TextPainter; import org.jbarcode.paint.UPCATextPainter; import org.jbarcode.paint.WidthCodedPainter; import org.jbarcode.util.ImageUtil; import com.google.zxing.BinaryBitmap; import com.google.zxing.BlackPointEstimationMethod; import com.google.zxing.ChecksumException; import com.google.zxing.FormatException; import com.google.zxing.LuminanceSource; import com.google.zxing.MonochromeBitmapSource; import com.google.zxing.MultiFormatReader; import com.google.zxing.NotFoundException; import com.google.zxing.Reader; import com.google.zxing.ReaderException; import com.google.zxing.Result; import com.google.zxing.client.j2se.BufferedImageLuminanceSource; import com.google.zxing.common.BaseMonochromeBitmapSource; import com.google.zxing.common.BitArray; import com.google.zxing.common.BitMatrix; import com.google.zxing.common.HybridBinarizer; /** * 利用jbarcode生成各種條形碼! * 利用zxing解析生成的條碼 * @author lyy * */ public class BarcodeUtil { //生成EAN8條碼 public static void build8barcode(){ JBarcode jBarcode = new JBarcode(EAN8Encoder.getInstance(), WidthCodedPainter.getInstance(), EAN8TextPainter.getInstance()); String str = "5201314"; BufferedImage bufferedImage = null; try { bufferedImage = jBarcode.createBarcode(str); FileOutputStream fileOutputStream = new FileOutputStream("F:" + File.separator + "file_util" + File.separator + "test.jpg"); ImageUtil.encodeAndWrite(bufferedImage, "jpeg", fileOutputStream); System.out.println("ok"); fileOutputStream.close(); } catch (Exception e) { e.printStackTrace(); } } //生成EAN13條碼 public static void build13barcode(){ JBarcode jBarcode=new JBarcode(EAN13Encoder.getInstance(), WidthCodedPainter.getInstance(), EAN13TextPainter.getInstance()); String str = "110802141314"; System.out.println(str); BufferedImage bufferedImage = null; try { bufferedImage = jBarcode.createBarcode(str); FileOutputStream fileOutputStream = new FileOutputStream("F:" + File.separator + "file_util" + File.separator + "test13.jpg"); ImageUtil.encodeAndWrite(bufferedImage, "jpeg", fileOutputStream); System.out.println("ok"); fileOutputStream.close(); } catch (Exception e) { e.printStackTrace(); } } //解析條碼 public static void parseBarcode(){ Reader reader=new MultiFormatReader(); String filename="F:"+ File.separator + "file_util" + File.separator + "test.jpg"; Image image= Toolkit.getDefaultToolkit().getImage(filename); MediaTracker mediaTracker=new MediaTracker(new Frame()); mediaTracker.addImage(image, 0); BufferedImage bufferedImage=null; try { mediaTracker.waitForID(0); bufferedImage=new BufferedImage(image.getWidth(null),image.getHeight(null), BufferedImage.TYPE_INT_BGR); bufferedImage.createGraphics().drawImage(image,0,0,null);; LuminanceSource source=new BufferedImageLuminanceSource(bufferedImage); BinaryBitmap binaryBitmap= new BinaryBitmap(new HybridBinarizer(source)); Result result=reader.decode(binaryBitmap); System.out.println("解析得到的條碼值為:"+result.getText()); } catch (InterruptedException | NotFoundException | ChecksumException | FormatException e) { e.printStackTrace(); } } public static void main(String[] args) { build8barcode(); build13barcode(); parseBarcode(); } }
相關推薦
java生成條碼並解析條碼
package com.lyy.util; import java.awt.Frame; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import java.aw
JAVA -- 生成Excel 並上傳到 FTP 不生成本地檔案
直接上程式碼 POM.XML 這裡只是主要的jar <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --> <dependency> <groupId>
JAVA -- 生成CSV並上傳到 FTP 不生成本地檔案
直接上程式碼 POM.XML 這裡只是主要的jar <dependency> <groupId>net.sf.supercsv</groupId> <artifactId>super-csv</artifactId
JAVA 生成隨機數 並根據概率 比率
做一個翻寶程式,通過返回數字0-5來判斷中獎情況,012345,這幾個數字的出現的概率是0出現最高,1出現比0少,2出現比1少,依次下去/** * JAVA 返回隨機數,並根據概率、比率 * @author zhanglei * */public class MathRando
Java讀取Excel並解析文字(並格式化輸出)
說明 最近在做一個比較小型的網站,需要批量匯入註冊使用者.使用者的資訊寫在一張excel表格裡面. 所以就需要讀取excel.所以就記錄下遇到的問題,以及以後檢視. 相關技術
Java生成條碼二維碼
test debugging 二維碼 bsp 格式 binary 輸出 nbsp googl 一、概述 可用barcode4j或zxing等第三方庫,推薦zxing。 barcode4j資料鏈接:http://barcode4j.sourceforge.net/ zx
JAVA生成條碼(jbarcode)
條碼技術在現在的應用非常廣泛,幾乎所有的商品包裝上都會印有條形碼,這一篇將通過例項演示JAVA如何生成條碼,需要使用的第三方包為:jbarcode import java.awt.image.BufferedImage; import java.io.Fi
Java中讀取XML檔案,生成XML格式的字串並解析這個字串
由於最近要用的是XML格式的字串,而不用寫到檔案中,所以對原始程式碼進行了修改如下: 要讀的xml檔案 <?xml version="1.0" encoding="GB2312"?> <學生花名冊> <學生 性別 = "男">
java生成二維碼並解析二維碼(QRCode方式)
準備工作 下載jar http://www.swetake.com/qrcode/java/qr_java.html https://zh.osdn.net/projects/qrcode/downloads/28391/qrcode.zip/ jar下載完畢後新建專案
POI以SAX方式解析Excel2007大文件(包含空單元格的處理) Java生成CSV文件實例詳解
arraylist api csdn false gif pac apache all top http://blog.csdn.net/l081307114/article/details/46009015 http://www.cnblogs.com/dreammyl
Java生成並打印二維碼
else clas html4 bar output ans utf-8 orm 二維 本次做訂餐系統中,需要用到在Java生成二維碼,並在jsp頁面打印並輸出,其中在action中生成二維碼. 關鍵代碼如下 1 public void reWeiMa() throws
java生成自增流水號,並從每月第一天重新清零計數(原創)
equals code ext 數據庫操作 get color mage 隨機數 static 如果你不想在數據庫操作的話,這裏有個方法可以一試,直接上代碼: package com.seawin.common.util.convert; import java.te
java 生成和解析xml
img use public set odin 實現 etag system Coding 本文主要使用的是Jdom.jar包(包的下載百度一下)實現了生成xml文件和解析xml文件 下面是生成xml的實現 說明:stuLists集合是一個存放著Student對象的集合
java生成和解析二維碼
ade ted image def eat tro per buffer could 前言 現在,二維碼的應用已經非常廣泛,在線生成器也是諸多,隨手生成。 所以就和大家分享一個小案例,用zxing來做一個的二維碼生成器,當然這個例子是比較簡單,若是寫的不好請多多包涵。
JAVA生成一個二維數組,使中間元素不與相鄰的9個元素相等,並限制每一個元素的個數
map 個數 nta nds put 可用 dom mov wid JAVA生成一個二維數組,使中間元素不與相鄰的9個元素相等,並限制每一個元素的個數 示例如下 至少需要九個元素:"A","B","C","D","E","F","G","H","I" 我們打印一個30*15
Java上傳Excel並解析
err com XML ger exc try finally write else 1.上傳: public String uploadFile(CommonsMultipartFile file,String uploadPath,String realUploadP
Android PDA掃描槍廣播接搜條碼並使用
amp gets filter 般的 protected eat art nop min 在開發掃描槍掃碼接收廣播條碼的時候,由於廠商如shit般的文檔和對Anroid基礎知識的缺失,走了一些彎路,以下是廣播接收條碼並使用的代碼實現 : 1 : 動態註冊廣播
Java之生成Pdf並對Pdf內容操作
enc images sub als tar 應用 throw mave add 雖說網上有很多可以在線導出Pdf或者word或者轉成png等格式的工具,但是我覺得還是得了解知道是怎麽實現的。一來,在線免費轉換工具,是有容量限制的,達到一定的容量時,是不能成功導出的;二來,
java HttpClient 訪問webservice並解析返回資料
關於webservice的普及就不多說了,直接進入主題吧。 1.導包 <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient HttpClient相關包-->
java生成二維碼/java解析二維碼
text level hang err 定義 image binary port style 二維碼的優缺點 優點:1. 高密度編碼,信息容量大;2.編碼範圍廣;3.容錯能力強;4.譯碼可靠性高;5.可引入加密措施;6.成本低,易制作,持久耐用。 缺點: