Base64 excel文件流Aspose.Cells.CellsException

时间:2017-09-21 16:06:15

标签: excel base64 aspose-cells

我有一个x64文件的Base64字符串。当我尝试打开base64流时 它抛出以下异常

Aspose.Cells.CellsException :不支持此文件的格式,或者您未指定正确的格式。

public Stream ConvertFileToStream(string fileBase64)
{
        var fileAsBytes = Convert.FromBase64String(fileBase64);
        Stream stream = new MemoryStream(fileAsBytes);
        return stream;
  }


public void Open(Stream fileSource)
{
        FileFormatUtil.DetectFileFormat(fileSource);
        _workbook = new Workbook(fileSource);
}

1 个答案:

答案 0 :(得分:1)

我更改了代码的相关部分并且它有效。现在我可以使用base64 excel字符串了。

首先,我使用 BinaryWriter 将文件转换为流。

ExamId id = new ExamId(1L);
session.get(Exam.class, id);

然后我更改了我的Open方法,将文件转换为Workbook。

public Stream ConvertFileToStream(string fileBase64, NameValueCollection formData, string fileName)
{
        var fileAsBytes = Convert.FromBase64String(fileBase64);
        var  stream = new MemoryStream();
        BinaryWriter writer = new BinaryWriter(stream);
        writer.Write(fileAsBytes);

        return stream;
}