我如何从asp.net Web应用程序中选择文件夹或文件?

Ser*_*lov 7 c# asp.net

我有一个ASP.NET Web应用程序,我需要将网页中的数据放到输出文本文件中.我想让用户能够选择保存文件的文件夹.例如,当用户单击"浏览"按钮时,应显示"选择文件夹"对话框.

是否有可能在asp.net Web应用程序中实现这样的东西?

谢谢,

谢尔盖

hea*_*arn 2

编辑:

看看您的评论,我认为您的意思是推送到响应流?

 protected void lnbDownloadFile_Click(object sender, EventArgs e)
 {
  String YourFilepath;
  System.IO.FileInfo file = 
  new System.IO.FileInfo(YourFilepath); // full file path on disk
  Response.ClearContent(); // neded to clear previous (if any) written content
  Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);
  Response.AddHeader("Content-Length", file.Length.ToString());
  Response.ContentType = "text/plain";
  Response.TransmitFile(file.FullName);
  Response.End();
 }
Run Code Online (Sandbox Code Playgroud)

这应该在浏览器中显示一个对话框,允许用户选择保存文件的位置。

您想要使用 FileUpload 控件

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.aspx

protected void UploadButton_Click(object sender, EventArgs e)
  {
    // Specify the path on the server to
    // save the uploaded file to.
    String savePath = @"c:\temp\uploads\";

    // Before attempting to perform operations
    // on the file, verify that the FileUpload 
    // control contains a file.
    if (FileUpload1.HasFile)
    {
      // Get the name of the file to upload.
      String fileName = FileUpload1.FileName;

      // Append the name of the file to upload to the path.
      savePath += fileName;


      // Call the SaveAs method to save the 
      // uploaded file to the specified path.
      // This example does not perform all
      // the necessary error checking.               
      // If a file with the same name
      // already exists in the specified path,  
      // the uploaded file overwrites it.
      FileUpload1.SaveAs(savePath);

      // Notify the user of the name of the file
      // was saved under.
      UploadStatusLabel.Text = "Your file was saved as " + fileName;
    }
    else
    {      
      // Notify the user that a file was not uploaded.
      UploadStatusLabel.Text = "You did not specify a file to upload.";
    }

  }
Run Code Online (Sandbox Code Playgroud)