如何从文件路径获取文件名,可以从不同的OSX或Windows上载文件。
什么想实现什么是挑战如下:无法从文件路径获取文件名
- 我的目标是清理的文件名,如果有任何非法字符。 示例:OSX允许
\
以及windows文件系统不允许的其他几个字符。 alg用_
代替\
。 - 有时某些浏览器(IE)将整个路径作为文件名发送到我的代码。所以,如果我从网络中的窗户上传共享文件,IE发送名称为
\\\\servername\\folder\\filenmae.txt
- 我无法的FileInfo或路径中使用,因为文件名从OSX未来能有非法字符,如|
,>
, <
,因为如果Mac OSX中文件名的名称是\\path\ex\file
,fileinfo或路径会给我“文件”作为文件名而不是整个名称。
- 现在,如果文件名有:\路径,我可以很容易地提取使用 filename.Substring(filename.LastIndexOf(@"\") + 1)
文件名 - 但我的问题是共享文件,因为共享的文件完整路径模式在Windows可以是OSX中的文件名。
我怎样才能得到全名?
任何建议,将不胜感激。
您无法知道'\\ a \ b \ c.txt'是否是Windows的完整路径或来自* nix的异常文件名。 – SLaks
在OSX中应用于文件名的规则是什么? –
谷歌请!,我知道:-) – din