c# - 将图像导出为 CSV

标签 c# asp.net image export-to-csv

您好,我正在尝试使用二维码生成导出 .csv 文件。

我已经完成二维码生成和 CSV 导出,但我想将生成的二维码图像绑定(bind)到我的 .csv 文件。

这是我完成的..

 protected void lnkbtnSave_Click(object sender, EventArgs e)
        {
            int NoOfCode = int.Parse(txtNoOfCode.Text);
            DateTime ExpiryDate = DateTime.Parse(txtExpiryDate.Text.ToString());
            string csv = string.Empty;

            //Add the Header row for CSV file.
            csv += "Code" + ',' + "Expiry On" + ',' + "QR Code" + ',';
            csv += "\r\n";

            for (int i = 0; i < NoOfCode; i++)
            {
                string GeneratedCode = GenerateString(8);
                Tuple<int, string, int> tuple = Code.AddData(GeneratedCode, ExpiryDate);

                QRCodeGenerator qrGenerator = new QRCodeGenerator();
                QRCodeGenerator.QRCode qrCode = qrGenerator.CreateQrCode(GeneratedCode, QRCodeGenerator.ECCLevel.Q);
                System.Web.UI.WebControls.Image imgBarCode = new System.Web.UI.WebControls.Image();
                imgBarCode.Height = 150;
                imgBarCode.Width = 150;
                byte[] byteImage;
                using (Bitmap bitMap = qrCode.GetGraphic(20))
                {
                    using (MemoryStream ms = new MemoryStream())
                    {
                        bitMap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
                        byteImage = ms.ToArray();
                        imgBarCode.ImageUrl = "data:image/png;base64," + Convert.ToBase64String(byteImage);
                    }
                    plBarCode.Controls.Add(imgBarCode);

                    csv += "\r\n";

                    **csv += GeneratedCode.ToString() + ',' + ExpiryDate.ToString() + ',' + bitMap + ',';**
                }
            }

            Response.Clear();
            Response.Buffer = true;
            Response.AddHeader("content-disposition", "attachment;filename=SqlExport.csv");
            Response.Charset = "";
            Response.ContentType = "application/text";
            Response.Output.Write(csv);
            Response.Flush();
            Response.End();

        }

提前致谢..

最佳答案

问题是,您无法在 csv 文件中保存图像。您需要更改文件扩展名才能执行此操作 [例如 .xls 或 .xlsx]。

关于c# - 将图像导出为 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37561975/

相关文章:

c# - MVC Controller 上的异步与同步基准测试有问题

.net - 识别.NET MAUI图像加载失败

c# - 根据 XML 元素的值创建 if 语句 block

c# - 使用枚举作为可选参数

javascript - 直接处理来自 AJAX 请求的数据

html - css 没有正确显示 asp.net mvc

c# - C#中构造函数的返回类型是什么?

javascript - 使用 jquery 进行下拉列表验证

image - 添加 og : image to specific pages in Hugo

C# - 我可以使用 Libtiff 输出 Tiff 编码的 JPEG(在 YCbCr 中)