二维码生成工具源码(C#版)

这篇博客分享了如何在Visual Studio 2013和.NET Framework 4.5环境下开发二维码生成接口。开发者可以在此源码下载地址获取资源:https://download.csdn.net/download/qq_27352959/15438757。如果在开发或使用过程中遇到问题,作者承诺会在评论区及时回应。
摘要由CSDN通过智能技术生成

源码下载地址

https://download.csdn.net/download/qq_27352959/15438757
资源说明
在这里插入图片描述
开发运行环境
vs2013 .Net 4.5

二维码生成接口
在这里插入图片描述
在这里插入图片描述
若开发或使用过程中遇到任何技术问题,请在评论区留言,笔者将会第一时间予以探讨。

QRCode二维码维码支持中文,网上流传很多本都说支持中文二维码。看过测试都有问题,自己看了源码改了下。 原本 中有 IsUnicode 方法判断是否为Unicode编码 但这个方法好像有问题 所以无法准确判断中文。可以通过改写这个来实现中文。 另外有两个方法 都可以解决中文问题 public virtual String decode(QRCodeImage qrCodeImage, Encoding encoding) public virtual String decode(QRCodeImage qrCodeImage) 因为是虚方法可以重写这个方法就可以 所以 可以通过 改写IsUnicode 和 重写 这个两个虚方法来实现 /// /// 用于判断中文 /// /// /// public static bool IsUnicode(byte[] byteData) { // This is by Joson Jiang 用于判断中文 //因为ascii编码当中的最大为127,这样判断后, //就能正确的判断是不是unicode,这样就能正确的解码中文了. bool isUnicode = false; try { foreach (byte value in byteData) { if (value > 128) { isUnicode = true; break; } } } catch (Exception) { //其中的是原本的代码 无法正确判断 中文 string value1 = FromASCIIByteArray(byteData); string value2 = FromUnicodeByteArray(byteData); byte[] ascii = AsciiStringToByteArray(value1); byte[] unicode = UnicodeStringToByteArray(value2); if (ascii[0] != unicode[0]) return true; return false; } return isUnicode;//返回是不是Unicode编码 } /// /// 重写直接返回 解决中文问题 /// public class QRCodeDecoders : QRCodeDecoder { QRCodeDecoder decoder = new QRCodeDecoder(); public override String decode(QRCodeImage qrCodeImage) { sbyte[] data = decoder.decodeBytes(qrCodeImage); byte[] byteData = new byte[data.Length]; Buffer.BlockCopy(data, 0, byteData, 0, byteData.Length); String decodedData; return decodedData = ThoughtWorks.QRCode.Codec.Util.QRCodeUtility.FromUnicodeByteArray(byteData); } } 忘了说这个是 vs2010的 原本是 vs2005
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愤怒的爱码仕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值