0

C# Windows アプリケーションがあり、標準の [ファイルの保存/ダウンロード] ダイアログを byte[] で開きたいと考えています。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

Your MVC app didn't open that dialog, browser did. In Winforms application you can use :

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 に答える