首页 > 代码库 > C# 生成二维码

C# 生成二维码

using System;using System.Collections.Generic;using System.Linq;using System.Text.RegularExpressions;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Text;using ThoughtWorks;using ThoughtWorks.QRCode.Codec.Util;using ThoughtWorks.QRCode.Codec;using ThoughtWorks.QRCode.Codec.Data;using System.Drawing.Imaging;using System.IO;namespace WebTest{    public partial class main : System.Web.UI.Page    {        protected void Page_Load(object sender, EventArgs e)        {        }        protected void Button1_Click(object sender, EventArgs e)        {            QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();            qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;            qrCodeEncoder.QRCodeScale = 4;            qrCodeEncoder.QRCodeVersion = 8;            qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;            //String data = "Hello 二维码!";              String data =http://www.mamicode.com/ TextBox1.Text.ToString();            Response.Write(data);            System.Drawing.Bitmap image = qrCodeEncoder.Encode(data);            System.IO.MemoryStream MStream = new System.IO.MemoryStream();            image.Save(MStream, System.Drawing.Imaging.ImageFormat.Png);            Response.ClearContent();            Response.ContentType = "image/Png";            Response.BinaryWrite(MStream.ToArray());            //FileInfo f = new FileInfo(@"d:\zl.png");              Directory.CreateDirectory("d:\\zlf");            FileStream fs = new FileStream("d:\\zlf\\zz.png", FileMode.CreateNew, FileAccess.ReadWrite);            BinaryWriter bw = new BinaryWriter(fs, UTF8Encoding.UTF8);            byte[] by = MStream.ToArray();            for (int i = 0; i < MStream.ToArray().Length; i++)                bw.Write(by[i]);            fs.Close();         }    }}

在前台直接拉textbox和button。控件的ID不要改。textbox中输入的是二维码对应的文本。

需要在项目中添加引用ThoughtWorks.QRCode.dll(百度云中有!)

 

C# 生成二维码