从我理解的asp.net FileUpload.FileName ruturns完整路径,而在Firefox中它只返回文件名.我如何从返回的字符串中删除路径,因为我只需要html编码的文件名.
Jos*_*osh 24
您可以使用Path静态类来获取文件名.
var fileName = Path.GetFileName(somePath);
Run Code Online (Sandbox Code Playgroud)
和HttpUtility静态类来编码它.
var encoded = HttpUtility.HtmlEncode(fileName);
Run Code Online (Sandbox Code Playgroud)
因此,在工具 - > Internet选项 - >安全性下有IE设置(不仅在IE8中,而且在新版本中),允许您在文件上载时包含或排除本地路径.

因此,如果您不想保留完整路径信息,如果您想要支持IE,则最明确地删除路径是最安全的(不确定是否有任何其他浏览器具有此类设置).
如Josh所述,Path.GetFileName(...)是一个不错的选择.您还可以将string.Split与Linq结合使用.
string fileNameOnly = somePath.Split('\\').Last();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9836 次 |
| 最近记录: |