我有一个小型ASP.NET应用程序,它从表中读取数据并将其作为Excel电子邮件中的Excel附件发送出去。这些数据只是HTML表格标记的数据。我发送消息的方式是由下面的代码:Excel 2007将导出的内存流数据转换为公式
byte[] data = GetData(excelData);
MemoryStream memoryStream = new MemoryStream(data);
mm.Attachments.Add(new Attachment(memoryStream, "info.xls", "text/plain"));
在Excel 2003中,但由于某种原因,Excel 2007中这已经工作正常不停地尝试整件事转化为一个公式,我得到一个“细胞数据太长“错误。我尝试过搜索,但无法找到任何具体的关于为什么这可能发生在07年或解决它的简单方法。我知道07可能处理的数据与03有点不同,但如果可能的话,我没有太多时间致力于重新编写此应用程序。有没有人有任何建议,为此容易解决?
这很简单,但我不能做基本的格式化,如使用csv居中(这不是很重要),但特殊字符在csv文件中也不能正确呈现,但它们在xls文件中。我有MailMessage编码集,它显示电子邮件本身中的特殊字符,但有什么方法可以正确编码csv附件? – novacara 2011-01-06 17:29:37