0

我正在开发一个 Web 应用程序,该应用程序从某个位置读取文件并使用System.IO.FileStream类将其写在磁盘上。在我编写这些文件时是否可以显示某种进度条或更新条。

这是示例代码

using (Stream input = getResponse.GetResponseStream())
            {
                using (FileStream output = new FileStream(saveTo1, FileMode.OpenOrCreate))
                {
                    int bytesRead;

                    while ((bytesRead = input.Read(buffer, 0, buffer.Length))>0)
                    {
                        output.Write(buffer, 0, bytesRead);
                    }
                }
            }

提前致谢。:)

4

2 回答 2

1

尝试使用更新进度。

你需要做什么?

  • 单击更新面板时放置一个写入文件流的按钮,例如“UPanelOperation”。
  • 将以下代码行放在更新面板中结束内容模板标记之前。
  • 请在以下代码行中将图像名称更改为您拥有的任何图像

    <asp:UpdateProgress ID="updateProgress" runat="server" DisplayAfter="0" AssociatedUpdatePanelID="UPanelOperation">
        <ProgressTemplate>
            <div id="progressBackgroundFilter">
            </div>
            <div align="center">
                <img src="../../css/images/1-0.gif" />&nbsp;Please Wait...</div>
        </ProgressTemplate>
    </asp:UpdateProgress>
    
于 2012-06-28T06:53:02.483 回答
0

当然可以。编辑您的代码如下:

while ((bytesRead = input.Read(buffer, 0, buffer.Length))>0)
                {
                    label1.Text = buffer.ToString() + " bytes transfered.";
                    output.Write(buffer, 0, bytesRead);
                }

...其中 label1 是您放置在表单上的控件。

于 2012-06-28T06:53:15.573 回答