【问题标题】:How to read from file to stream and display as text?如何从文件读取流并显示为文本?
【发布时间】:2011-04-20 19:46:29
【问题描述】:

我正在通过 Web 服务读取文本文件。我以字节 [] 数据块的形式获取数据并将其重新组合成 MemoryStream。现在我想弄清楚如何在文本区域中显示文本数据。关于如何做到这一点的任何建议,我被卡住了?

更新

这是最终的解决方案,它将文本文件的内容作为字符串返回,然后显示在 textarea 中。

    public string DownloadFile(string filenamepath)
    {
        int offset = 0;
        int chunkSize = 16000;
        string filecontents = string.Empty;

        using (var wsc = new WebServiceClient())
        {
            using (var fs = new MemoryStream())
            {
                while (true)
                {
                    var buffer = wsc.DownloadFile(filenamepath, offset, chunkSize);
                    int read = buffer.Length;
                    if (read <= 0)
                        break;

                    fs.Seek(offset, SeekOrigin.Begin);
                    fs.Write(buffer, 0, read);
                    offset += read;
                }

                using (var reader = new StreamReader(fs))
                {
                    reader.BaseStream.Seek(0, SeekOrigin.Begin);
                    filecontents = reader.ReadToEnd();
                }
            }
        }
        return filecontents;
    }

【问题讨论】:

    标签: c# asp.net-mvc memorystream


    【解决方案1】:

    MemoryStream 周围包裹一个StreamReader 并调用读者的ReadToEnd() 方法。

    确保相应地设置阅读器的编码。

    【讨论】:

      【解决方案2】:

      用途:

      MemoryStream stream = ... //Your memory stream here
      
      using (var reader = new StreamReader(stream))
      {
          textArea.Text = reader.ReadToEnd();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-11-18
        • 1970-01-01
        • 2013-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-19
        相关资源
        最近更新 更多