在 ASP.NET C 中保存 qrCode 或 base64 中的图像文件#

Save image file from qrCode or base64 in ASP.NET C#

提问人:Raja 提问时间:9/23/2022 最后编辑:marc_sRaja 更新时间:9/23/2022 访问量:276

问:

我想将qrCode保存为应用程序路径中的图像文件,以便我可以在Crystal Report中创建的报表上调用它。

如何将qrCode保存为图像文件或将base64转换为图像并保存在物理位置?

这是我的代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        TextBox6.Text = GenerateAndGetString();

        QRCodeGenerator qrGenerator = new QRCodeGenerator();
        QRCodeData qrCodeData = qrGenerator.CreateQrCode(TextBox6.Text, QRCodeGenerator.ECCLevel.Q);
        QRCode qrCode = new QRCode(qrCodeData);

        Bitmap qrCodeImage = qrCode.GetGraphic(20);

        using (Bitmap bitMap = qrCode.GetGraphic(20))
        {
            using (MemoryStream ms = new MemoryStream())
            {
                bitMap.Save(ms, ImageFormat.Png);
                byte[] byteImage = ms.ToArray();
                img.Src = "data:image/png;base64," + Convert.ToBase64String(byteImage);
            }
        }
    }
}

public String GenerateAndGetString()
{
    var sellername = TextBox1.Text;
    var vatregistration = TextBox2.Text;
    var timestamp = TextBox3.Text;
    var invoiceamount = TextBox4.Text;
    var vatamoun = TextBox5.Text;

    return ConvertBase64(sellername, vatregistration, timestamp, invoiceamount, vatamoun);
}
C# asp.net TLV

评论


答:

1赞 MiVoth 9/23/2022 #1

你已经得到了字节数组的图像,所以你可以做这样的事情:

System.IO.File.WriteAllBytes(path, ms.ToArray());