【发布时间】:2025-12-18 08:35:01
【问题描述】:
我有一个radgrid,其中有一个image column。
当我以excel 格式导出时,图像显示在excel 文件中,但是当我将其导出到csv 文件时,它只是显示image url 而不是image。有没有办法将图像嵌入csv 文件中?
【问题讨论】:
标签: asp.net telerik telerik-grid radgrid
我有一个radgrid,其中有一个image column。
当我以excel 格式导出时,图像显示在excel 文件中,但是当我将其导出到csv 文件时,它只是显示image url 而不是image。有没有办法将图像嵌入csv 文件中?
【问题讨论】:
标签: asp.net telerik telerik-grid radgrid
很抱歉打扰您,但没有直接的方式以 csv 格式存储图像文件。但是......有解决方法。我怀疑你会发现它们... 吸引人。
希望这会有所帮助。祝你好运!
【讨论】:
CSV 是一个以逗号分隔的纯文本文件,它不支持任何非文本内容。但是,有一种类似于 apollo 建议的解决方法,这就是您想要的编码方式。
//Display image and set the alternate text
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)item["GridImageColumn"].Controls[0];
//set image url
img.ImageUrl = "~/images/test.png";
/convert image to byte array and get the base64 representation
byte[] imageArray = System.IO.File.ReadAllBytes(Server.MapPath("~/images/test.png"));
string base64ImageRepresentation = Convert.ToBase64String(imageArray);
img.AlternateText = base64ImageRepresentation;
}
}
//Finally export the data
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in RadGrid1.MasterTableView.Items)
{
System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)item["GridImageColumn"].Controls[0];
item["GridImageColumn"].Text = img.AlternateText;
}
RadGrid1.MasterTableView.ExportToCSV();
}
【讨论】: