gpt4 book ai didi

c# - 如何在 asp.net c# 上制作一个真正的 XLS 文件?

转载 作者:太空狗 更新时间:2023-10-29 23:24:17 25 4
gpt4 key购买 nike

我有这段代码可以在 .xls 文件中将表格提取到计算机:

// I have a string which contains HTML table codes, named as excelTable

HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.AddHeader("Content-Disposition", String.Format("Attachment;Filename=file.xls", ));
response.Buffer = true;
response.ContentEncoding = System.Text.Encoding.Default;
response.ContentType = "application/vnd.ms-excel";
response.Write(excelTable);
response.End();

而且我发现这不是真正的 .xls 文件。我可以在记事本中打开它并查看我的标准 html 表格代码。

现在我明白定义 ContentType 是不够的。那么我还能做些什么来生成纯 .xls 或 .xlsx 文件呢?或者我是否应该使用 OpenXML、Interop 等 Excel 库?

最佳答案

实际 XLS/XLSX 数据必须发回 - 即,由库(例如 EEPlus)或其他合适来源生成的数据。

这种常见的 hack/方法之所以有效,是因为 Excel“知道如何阅读 HTML”。它不会实际上将 HTML 转换为 XSL/XLSX,尽管它可以在被 Excel 加载后另存为电子表格。

更改内容类型对数据没有影响,相反会有效地阻止这种方法的工作:内容类型用于关联程序(即 Excel),该程序将用于打开/读取数据。

是的:要生成真正的 XLS/XLSX 文档,请使用库。

关于c# - 如何在 asp.net c# 上制作一个真正的 XLS 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15131472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com