Pregunta ¿Cómo puedo seleccionar una carpeta o un archivo desde la aplicación web asp.net?


Tengo una aplicación web ASP.NET y necesito poner datos de la página web en el archivo de texto de salida. Me gustaría darle al usuario la posibilidad de seleccionar la carpeta donde se guardará el archivo. Por ejemplo, cuando el usuario hace clic en el botón 'Buscar', debe aparecer el cuadro de diálogo Seleccionar carpeta.

¿Es posible implementar tal cosa en la aplicación web asp.net?

Gracias,

Sergey


6
2018-02-20 13:08


origen


Respuestas:


EDITAR:

En cuanto a su comentario, creo que quiere decir empujar a la secuencia de respuesta en su lugar

 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();
 }

Esto debería mostrar un cuadro de diálogo en el navegador que permite al usuario seleccionar dónde guardar el archivo.

Desea utilizar el control 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.";
    }

  }

2
2018-02-20 13:15



Utilizando <input type="file"> El usuario solo puede navegar por los archivos en su computadora. No hay forma de que vea las carpetas en el servidor a menos que le de una lista o una estructura de vista de árbol para que pueda elegir. Aquí hay un ejemplo de la construcción de tal vista del árbol.


3
2018-02-20 13:12



Dicho diálogo de descarga es específico del navegador.

Eche un vistazo a los controladores genéricos con Response. Escriba o incluso mejor escriba un controlador Http para tal fin.


1
2018-02-20 13:39