当前位置: 首页 > 知识库问答 >
问题:

C#Spire Document.SaveToStream不工作

贲骏喆
2023-03-14

我有以下代码,但它只是创建一个0KB的空文件。

using (var stream1 = new MemoryStream())
{
    MemoryStream txtStream = new MemoryStream();
    Document document = new Document();
    fileInformation.Stream.CopyTo(stream1);
    document.LoadFromStream(stream1, FileFormat.Auto);
    document.SaveToStream(txtStream, FileFormat.Txt);

    StreamReader reader = new StreamReader(txtStream);
    string text = reader.ReadToEnd();
    System.IO.File.WriteAllText(fileName + ".txt", text);
 }

我知道数据已成功加载到文档中,因为如果dodocument.savetotxt(“test.txt”,encoding.utf8);而不是savetostream行,它将正确导出文件。

我做错了什么?

共有1个答案

衡泰
2023-03-14

当复制流时,如果复制,您需要注意将位置重置为0。正如这里的答案所示,您可以对流执行如下操作:

stream1.Position = 0;
txtStream.Position = 0;
 类似资料:
  • 我试图通过在命令提示符上放置以下行来调用一个可执行文件。(我知道我可以直接调用exe,但我们只能说,由于某些限制,我没有其他方法可以这样做) 给我错误 知道为什么吗?我该如何解决这个问题呢?我必须使用cmd.exe的完整路径。

  • 通过Amazon SP API上传提要有3个步骤,第一个步骤是通过API获取提要加密信息。但我收到了作为以下内容的响应: C#代码 我怀疑我没有正确使用,但我不确定。 我一直在以下链接: https://github.com/amzn/selling-partner-api-docs/blob/main/references/feeds-api/feeds_2020-09-04.md#create

  • 我有一个简单的测试,我试图将一个弱ptr参数绑定到一个接受弱ptr的全局函数,并在支持指针仍然有效的情况下调用一个方法。 当我用弱指针创建lambda时,这似乎是有效的。如果我用weak_ptr直接调用全局方法,它也可以工作。但是,如果我事先将全局函数绑定到weak_ptr,它似乎不起作用。下面的淡化代码说明了这个问题。 我一定错过了一些简单的东西。有什么线索吗? 结果输出: 期望第一个weakP

  • 问题内容: 考虑以下 jstl 选择: AuthMsgBean = Bean rw =地图 ‘2’=键 题: 当我简单地显示值时,它会显示正常(true),但是一旦我尝试将值解析为when标记,就好像测试始终为false一样。 如果我在测试()中输入true,则显示“显示文本”。 可能是在表达式之前对标记求值了吗? 如果是这样,是否有解决方法? 问题答案: JSTL和JSF不会像您期望的那样同步运

  • 我在写一个函数,需要返回多个变量,其中一个是位集。然后我遇到了一些奇怪的编译错误。 我尝试了不同的编译器,它们都会产生错误,尽管消息不同。 我试着googling了一下,似乎和公共和私有继承有关。但我认为它不应该以任何方式影响这段代码。 简化代码(C 17)如下所示: 如果我移除方括号(即移除结构化绑定并使用普通自动),它就会工作。 错误消息如下: source.cpp:在函数int main()

  • 我正在测试一个网站,以了解如何在C#中使用硒。我无法找到登录表单元素,因为表单输入元素没有任何标识符,而且xpath在我的代码中不起作用。 我包括了一张inspect元素代码的照片,我在检查相关的登录表单元素时看到了该代码。我的代码如下。 当然,我为密码包含的xpath是一个占位符,但它应该看起来与用户名相似。 在使用chrome的copy复制xpath时 我已经找了几个小时的答案,但什么都找不到