C#生成二维码

本文介绍了一种使用C#编程语言生成二维码的方法。通过设置二维码的编码模式、比例、版本和错误纠正级别等参数,可以将指定的文件下载路径编码成二维码图片。此方法能够帮助用户快速生成用于文件下载的二维码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 /*
         * 二维码生成方法(编程语言C#,java语言与其类似)
         * author:LiuC
          **/
        protected void Button2_Click(String fileName1, String QRCodePath, String filePath, String fileSaveName)
        {
            /*
             * QRCodePath--二维码保存路径,filePath---二维码对应的文件路径,fileSaveName--文件名和二维码保存名称
             * */
            QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
            qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//
            qrCodeEncoder.QRCodeScale = 4;//设置扫描二维码识别的类型
            qrCodeEncoder.QRCodeVersion = 8;//
            qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
            String data = "http://101.200.194.50:4580/"+filePath + fileSaveName;//获取文件的下载路径
            Response.Write(data);
            try//将文件下载路径写进二维码,扫描即可下载文件
            {
                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());
                Directory.CreateDirectory(Server.MapPath(QRCodePath));
                byte[] by = mStream.ToArray();
                image.Save(Server.MapPath(QRCodePath) + fileName1);//保存生成的二维码照片
            }
            catch (UnauthorizedAccessException e1)
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert('程序异常')", true);//弹窗提示
                Console.WriteLine(e1.Message);
            }
            catch (System.IndexOutOfRangeException e3)
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert('程序异常')", true);//弹窗提示
                Console.WriteLine(e3.Message);
            }
            catch (ExternalException e2) {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert('程序异常')", true);//弹窗提示
                Console.WriteLine(e2.Message);
            }
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值