0

我有以下代码,但它只是创建一个 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);
 }

我知道数据已成功加载,document因为如果做document.SaveToTxt("test.txt", Encoding.UTF8); 而不是SaveToStream它正确导出文件的行。

我究竟做错了什么?

4

1 回答 1

3

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

stream1.Position = 0;
txtStream.Position = 0;
于 2018-06-06T18:29:52.260 回答