Por lo que entiendo para asp.net FileUpload.FileName recorre la ruta completa mientras que en firefox devuelve solo el nombre del archivo. ¿Cómo eliminaría la ruta de la cadena devuelta ya que solo necesito el nombre de archivo html codificado?asp.net FileUpload.FileName devuelve la ruta completa, es decir, cuando no es necesario
Respuesta
Puede usar la clase estática Path para obtener el nombre de archivo.
var fileName = Path.GetFileName(somePath);
Y la clase estática HttpUtility para codificarlo.
var encoded = HttpUtility.HtmlEncode(fileName);
Incluso con 'fileName = HttpUtility.HtmlEncode (Path.GetFileName (fileBrowser.PostedFile.FileName))' todavía devuelve la ruta completa – Reahreic
Ok, ¿qué quiere decir con la ruta completa. Porque si llama a 'Path.GetFileName (" C: \ mypath \ myfile.txt ");' luego obtendrá '' myfile.txt "' – Josh
C: \ Users \ wolmarans \ Desktop \ xxyyzz.png – Reahreic
Así que hay un ajuste IE (no sólo en IE8, pero las versiones más recientes también) en Herramientas -> Opciones de Internet -> Seguridad que le permite incluir o excluir la ruta local en la carga de archivos.
Por esa razón, si no se quieren mantener información de la ruta completa, es más seguro para despojar de manera explícita la ruta si usted está deseando apoyar IE (no estoy seguro si otros navegadores tienen un entorno)
Como lo menciona Josh, Path.GetFileName (...) es una buena opción. También puede usar string.Split combinado con Linq.
string fileNameOnly = somePath.Split('\\').Last();
Path.GetFileName(Request.Files["file"].FileName)
- 1. ¿El mcrypt_get_iv_size de PHP realmente devuelve cero cuando el IV no es necesario?
- 2. Cuando es necesario usar Clases en PHP
- 3. ¿Es necesario cerrar cuando falló Fopen?
- 4. ¿Cómo deshacerse de UIAppearance cuando no es necesario?
- 5. ¿Cómo obtengo la ruta virtual completa de una aplicación ASP.NET?
- 6. ¿Cómo puedo decir que no es, no es
- 7. Ensamblaje de serialización. ¿Es necesario o no?
- 8. ¿Por qué session_start es necesario cuando se usa la sesión?
- 9. ¿Cuándo es necesario deshacerse?
- 10. ¿Es realmente necesario CDATA?
- 11. string.c_str() ¿es necesario desasignar?
- 12. Cómo decir No es nulo en VBA
- 13. C# new [delegate] no es necesario?
- 14. Application.DoEvents, ¿cuándo es necesario y cuándo no?
- 15. Play framework. no es necesario compilar
- 16. C#, WPF, llama automáticamente a Dispatcher. ¿Invoca cuando es necesario?
- 17. ¿No es necesario crear objetos cortos explícitamente?
- 18. ¿Es necesario volátil aquí?
- 19. optimización for-loop - ¿es necesario o no?
- 20. jquery - ¿Es $ (documento) necesario?
- 21. ¿Es necesario KillTimer?
- 22. ¿Cuál es la forma preferida de obtener la ruta completa del servidor en una vista ASP.NET MVC?
- 23. GLES2 ¿Es glBindAttribLocation() necesario?
- 24. ¿Es realmente necesario KillTimer?
- 25. Ajax.BeginForm devuelve la página completa
- 26. ¿Es necesario AssemblyInfo.cpp?
- 27. ruta no es un camino virtual válida
- 28. ¿Es necesario > alguna vez?
- 29. ¿Cómo se elevan los privilegios solo cuando es necesario?
- 30. En ASP.NET, ¿cómo obtiene la ruta del archivo físico cuando HttpContext.Current es NULL?
'ist filename' simplemente el nombre del archivo, incluso en IE comenzando con IE8. http://blogs.msdn.com/b/webtopics/archive/2009/07/27/uploading-a-file-using-fileupload-control-fails-in-ie8.aspx –
Tengo que admitir IE7 y 8 , aunque estoy notando que mientras mi modo de navegador es ie8, el modo de documento sigue volviendo a IE7 Bajo IE7 e IE8, devuelve 'NewsImages/C: \ Users \ wolmarans \ Desktop \ xxyyzz.png" ' – Reahreic
IE es tan malo :( –