码迷,mamicode.com
首页 > Web开发 > 详细

Asp.Net QRCode创建WEB二维码时遇到的问题!

时间:2014-12-30 13:16:51      阅读:381      评论:0      收藏:0      [点我收藏+]

标签:

12 条评论            

C# Qrcode是一个开源的二维码生成类库,项目地址是:http://www.codeproject.com/Articles/20574/Open-Source-QRCode-Library

今天手头一个项目需要添加动态生成二维码的功能,所以把这个类库稍微研究了一下,遇到了一个问题。在我重新编译QRCodeLib这个类库的时候报错!

报错信息为:

错误    7    “ThoughtWorks.QRCode.Properties.Resources”并不包含“GetResource”的定义    D:\QRCode\QRCodeLib\QRCodeEncoder.cs    735    72    QRCodeLib技术分享  

查看相关代码,是一个动态拼接文件名称,动态读取相关“配置文件”的一个功能,代码截图如下:

技术分享

只要把这三个出错的地方改成:

MemoryStream memoryStream = new MemoryStream((byte[])Resources.ResourceManager.GetObject(fileName));

就可以了。

 

另外,我的项目是web的,发现我下载的Qrcode项目文件的QRCodeWebApp里面并没有写相关功能!其实很简单,直接拿QRCodeSampleApp里面的关键核心代码改一下就可以了,上个截图吧!

技术分享

上面忽略了一个问题,QRCode创建出来的二维码存在编码问题,也就是中文乱码!一开始还没注意到,最后阶段才发现,也怪自己粗心大意。

其实也很简单,还是需要修改QRCodeLib里面的一点点代码。

1.修改 QRCodeEncoder.cs 跟 QRCodeDecoder.cs 把Encoding.Unicode 替换成 Encoding.UTF8

2.util目录下的QRCodeUtility.cs中的UnicodeEncoding encoding = new UnicodeEncoding();替换成UTF8Encoding encoding = new UTF8Encoding();

这次再调试出来的二维码中文就能够识别出来了!

下面附上自己的修改版,这里下载/upfiles/self/sean-qrcode.rar

修改的内容是编码全部替换成UTF8,

dlsaint 的问题解决截图:

技术分享

技术分享

技术分享

Asp.Net QRCode创建WEB二维码时遇到的问题!

标签:

原文地址:http://www.cnblogs.com/apecblue/p/4193225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!