下面是C#和JAVA兩個版本的開放源碼下載:
C#:http://www.codeproject.com/Articles/20574/Open-Source-QRCode-Library
JAVA:https://github.com/zxing/zxing
本人只測試過了C#版本的,下面是測試過程中遇到的問題以及解決辦法:
1、第一次運行報錯信息如下:
錯誤 “ThoughtWorks.QRCode.Properties.Resources”並不包含“GetResource”的定義
解決辦法:
只需要把:“MemoryStream memoryStream = new MemoryStream(Resources.GetResource(fileName));” 都修改為 “MemoryStream memoryStream = new MemoryStream((byte[])Resources.ResourceManager.GetObject(fileName));”
通過上面的修改,對於英文的支持是直接運行就能通過的。生成和解析都沒問題。
這時你如果是輸入中文,運行后是沒有反應的,這時你需要修改源碼如下地方:
1.修改 QRCodeEncoder.cs 跟 QRCodeDecoder.cs文件 把Encoding.Unicode 替換成 Encoding.UTF8
2.util目錄下的QRCodeUtility.cs中的UnicodeEncoding encoding = new UnicodeEncoding();替換成UTF8Encoding encoding = new UTF8Encoding();
然后再運行生成出來的二維碼,對於中文就能夠識別出來了!
至此分享完結,以上解決方案都由網絡收集的。