Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/09/2010, 06:01
nimsprod
 
Fecha de Ingreso: septiembre-2010
Mensajes: 2
Antigüedad: 13 años, 7 meses
Puntos: 0
Problemas con nombre de un fichero al abrirlo desde la web

Hola a todos,

estoy haciendo una web en aspx.net. Trabajo con ficheros guardados en el servidor y que los usuarios pueden descargar a través de unos enlaces que les imprimo.

Bien, os intentaré explicar el problema. Cuando tras pulsar sobre un enlace (por ejemplo un documento .doc) y en el dialogo "Save As" que les aparece pulsan abrir, Microsoft Word abre el documento. Todo esto lo hace bien, el problema viene cuando dicho documento tiene tildes, eñes, etc.

El diálogo "Save as" logro que me imprima correctamente el nombre del archivo mediante la función Server.UrlPathEncode(strNombreFichero), pero cuando el documento se abre, el nombre de éste aparece con carácteres extraños que reemplazan a las tildes, eñes, etc...

Por último añadir, que irremediablemente he de hacer que funcione para IE7 o posteriores. Ya que con Firefox y Chrome no hay ningún problema.

Os adjunto el código que uso.

Gracias de antemano.

Código ASP:
Ver original
  1. Private Sub DescargarFichero(ByVal strRutaFichero As String, ByVal  strNombreFichero As String)
  2.  
  3.         Try
  4.    
  5.             Response.Clear()
  6.             Dim enCodeFileName As String = Server.UrlPathEncode(strNombreFichero)
  7.  
  8.               Response.ContentType = "application/docx; charset=utf-8"
  9.             Response.AddHeader("Content-Disposition", "attachment; filename=" + enCodeFileName)
  10.             Response.Flush()
  11.             Response.WriteFile(strRutaFichero)
  12.             Response.[End]()
  13.  
  14.             logger.Debug("Recurso descargado con éxito.")
  15.  
  16.         Catch exc As Exception
  17.             logger.Error(exc.Message + vbLf + exc.StackTrace)
  18.         End Try
  19.     End Sub