0

我有一个 C# Windows 应用程序,想用一个字节 [] 打开标准的保存/下载文件对话框。我可以使用 System.Web.Mvc.Controller 在我的 MVC3 Web 应用程序中使用以下代码执行此操作:

FileStream fs =  = System.IO.File.OpenRead(fileName);
File(fs, "application/zip", fileName.Substring(fileName.LastIndexOf('\\') + 1));

如何在 Windows 应用程序中完成此操作?

4

1 回答 1

1

您的 MVC 应用程序没有打开该对话框,浏览器打开了。在 Winforms 应用程序中,您可以使用:

Byte[] data;
/// initialize data

using (SaveFileDialog dialog = new SaveFileDialog())
{
  dialog.Filter = "zip files (*.zip)|*.zip|All files (*.*)|*.*";
  dialog.FilterIndex = 2;
  dialog.RestoreDirectory = true;
  if (dialog.ShowDialog() == DialogResult.OK)
  {
    using (FileStream fs = new FileStream(dialog.FileName, FileMode.CreateNew))
    {
      fs.Write(data, 0, data.Length);
    }
  }
}
于 2012-04-27T20:55:28.443 回答