C# 生成和解析二维码
下面是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();
然后再运行生成出来的二维码,对于中文就能够识别出来了!
至此分享完结,以上解决方案都由网络收集的。