asp.net C#生成和解析二维码代码

时间:2021-04-29 08:13:49

类库文件我们在文件最后面下载

【ThoughtWorks.QRCode.dll 就是类库】

使用时需要增加:

using ThoughtWorks.QRCode.Codec;
using ThoughtWorks.QRCode.Codec.Data;
using ThoughtWorks.QRCode.Codec.Util;

主要源代码:

1.生成二维码

 代码如下 复制代码
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();  
String encoding = cboEncoding.Text;  
if (encoding == "Byte")  
{  
     qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;  
}  
else if (encoding == "AlphaNumeric")  
{  
     qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC;  
}  
else if (encoding == "Numeric")  
{  
     qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.NUMERIC;  
}  
try  
{  
     int scale = Convert.ToInt16(txtSize.Text);  
     qrCodeEncoder.QRCodeScale = scale;  
}  
catch (Exception ex)  
{  
     MessageBox.Show("Invalid size!");  
     return;  
}  
try  
{  
     int version = Convert.ToInt16(cboVersion.Text);  
     qrCodeEncoder.QRCodeVersion = version;  
}  
catch (Exception ex)  
{  
     MessageBox.Show("Invalid version www.111cn.net !");  
}  
  
string errorCorrect = cboCorrectionLevel.Text;  
if (errorCorrect == "L")  
     qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L;  
else if (errorCorrect == "M")  
     qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;  
else if (errorCorrect == "Q")  
     qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.Q;  
else if (errorCorrect == "H")  
     qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H;   
Image image;  
String data = txtEncodeData.Text;  
image = qrCodeEncoder.Encode(data);  
pb_view.Image = image; 

2.解析二维码

 代码如下 复制代码

QRCodeDecoder decoder = new QRCodeDecoder();  
String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(pb_view.Image)));  
txtEncodeData.Text = decodedString;

Winform(Demo)下载:QRCode.rar http://file.111cn.net/download/2013/06/29/201205161653178428.rar

Web(Demo)下载:webQRCode.rar http://file.111cn.net/download/2013/06/29/201205161654200565.rar