Crystal报告2008 sp5生成一个损坏的word文档

时间:2014-11-10 08:10:55

标签: c# asp.net crystal-reports ms-word corrupt

自上次更新Crystal报表以来,我在生成word文件时遇到了问题。 Word文档已损坏,我无法在网上找到溶剂或类似问题。 我可以毫无问题地生成PDF文档。 Word中的文档已损坏,但我可以使用写字板打开。

生成的文件.doc已损坏,我的代码

没有错误
try
{
    t = CrystalDecisions.Shared.ExportFormatType.WordForWindows;
    content_type = "application/msword";
    var oStream = MonReport.ExportToStream(t);
    byte[] byteArray = new byte[oStream.Length];
    oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));


    parent.Response.ClearContent();
    parent.Response.ClearHeaders();

    parent.Response.ContentType = content_type;

    parent.Response.BinaryWrite(byteArray);
    parent.Response.Flush();
    parent.Response.Close();
    MonReport.Close();
    MonReport.Dispose();

1 个答案:

答案 0 :(得分:-1)

你的长度太短了。那应该是:

oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length));
                                           ^^^^^^^^^^^^^^

Stream.Read的第三个参数是

  

"从当前流中读取的最大字节数。"