2011-08-11 127 views
1

我如何轉換的完整路徑從完整的文件路徑,僅顯示文件名

C:\some folder\another folder\my-picture.jpg 

要:

my-picture.jpg 

預先感謝您。

+0

是否只需要在Windows路徑工作? – recursive

+0

是的,因爲只有IE顯示C:\ fakepath \ –

+0

'C:\ fakepath \'也是一個windows路徑。所有瀏覽器都能夠顯示它。它們也能夠顯示其他類型的路徑,如'/ etc/profile'。 – recursive

回答

2

你可以從最後的\(也適用於裸露的"file.ext")讀取;

var fn = "C:\\some folder\\another folder\\my-picture.jpg"; 
alert(fn.substr(fn.lastIndexOf("\\") + 1)); 
+0

這比'拆分'方法IMO –

+0

@ Xeon06更好,使用10,000次循環運行並且分離速度慢了1ms。我認爲這種方法並不能提高性能。 – epascarello

+0

@epascarello我認爲在更大的範圍內會產生影響。 IE,你有一大堆路徑,每個路徑都有很多目錄。但對於正常的每一天查詢,你可能是正確的。 –

1
var str = "C:\\some folder\\another folder\\my-picture.jpg"; 
var fileName = str.split("\\").pop(); 

,如果你需要處理不同的操作系統文件路徑

var str = "C:\\some folder\\another folder\\my-picture.jpg"; 
var fileName = str.split(/[\\\/]/).pop(); 
相關問題