如何分割路徑的「\」它給我的語法錯誤,如果我使用path.split("\\");
?我想分割路徑的「\」在C#
3
A
回答
4
嘗試path.Split('\\')
---所以單引號(字符)
使用字符串這個工程:
path.Split(new[] {"\\"}, StringSplitOptions.None)
要使用你有一個字符串指定字符串數組。我從來沒有得到過爲什麼:)
7
有沒有string.Split
重載需要一個字符串。 (另外,C#區分大小寫,因此您需要Split
而不是split
)。但是,您可以使用:
string bits = path.Split('\\');
其中將使用參數params char[]
的過載。它相當於:
string bits = path.Split(new char[] { '\\' });
這是假設你一定要用反斜槓分割。您可能想要通過您正在運行的操作系統的目錄分隔符進行拆分,在這種情況下,Path.DirectorySeparatorChar
可能是正確的方法...它將在Unix上爲/
,在Windows上爲。另一方面,如果您試圖在運行在Unix上的ASP.NET頁面中解析Windows文件系統路徑,那不會對您有所幫助。換言之,這取決於您的上下文:)
另一種替代方法是使用Path
和DirectoryInfo
上的方法以更多文件系統敏感的方式獲取有關路徑的信息。
26
您應該使用
path.Split(Path.DirectorySeparatorChar);
,如果你試圖分裂基於本地路徑分隔符的文件路徑。
0
Path.Split(new char[] { '\\\' });
1
在windows上,至少在Windows 7/XP中,在C#路徑函數和命令行上也接受使用正斜槓。
例如爲: 這兩個產生相同的結果對我來說:
dir "C:/Python33/Lib/xml"
dir "C:\Python33\Lib\xml"
(In C:)
dir "Python33/Lib/xml"
dir "Python33\Lib\xml"
在Windows,既不是「/」或「\」是文件名字符有效。在Linux上,'\'在文件名中是可以的,所以如果解析兩者,你應該知道這一點。
所以,如果你想支持兩種形式的路徑(像我這樣做),你可以這樣做:
path.Split(new char[] {'/', '\\'});
在Linux上它可能會使用更安全Path.DirectorySeparatorChar。
0
爲了安全起見,你可以使用:
path.Split(new[] { Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar });
相關問題
- 1. Progammatically分割路徑成多條路徑
- 2. 分割文件路徑
- 3. 用//分割simulink路徑。
- 4. 分割目錄路徑powershell
- 5. 我們如何在路徑中分割日期?
- 6. Powershell分割路徑失敗,路徑變量源自get-itemproperty
- 7. 由路徑分割形狀到子路徑
- 8. Python分割路徑遞歸地
- 9. 如何用斜槓分割路徑?
- 10. 如何使用ant分割路徑?
- 11. 如何分割一個字符串,並得到我想在C + +?
- 12. 我想幫助和想法有關如何繪製GPS的路徑在C#
- 13. 我想在Perl腳本路徑拆分工作目錄
- 14. 我想不使用分割功能
- 15. C#我想要的網址,而不是物理路徑名稱
- 16. 如何從URL的最後一個路徑分割剩餘路徑
- 17. 我想從一個絕對路徑
- 18. 找不到路徑的一部分C#asp.net,路徑有
- 19. C#僅查找包含路徑一部分的路徑
- 20. 我想分割一個字符串,但我想保留分隔符
- 21. 如何在特定目錄中分割路徑?
- 22. 如何在全文件名中分割一個路徑?
- 23. 我想設置我的JAVA_HOME路徑來使用我的javac.exe?
- 24. 如何分割shell腳本中的文件路徑?按我的需要
- 25. C#中的圖像分割(行分割和字符分割)
- 26. 不想在我的FOR XML路徑( 'TD')多餘的標籤
- 27. 我想在java中的文件的相對路徑
- 28. 找不到路徑的一部分C#
- 29. 找不到路徑的一部分'C:\
- 30. C中的Unix路徑分辨率
嗯,這要看情況。這可能是適當的 - 它可能不是。當然,如果在非Windows上使用單聲道,它只會有所不同......在這一點上,您仍然需要知道輸入是否實際上是主機操作系統的路徑,或者是否是(例如)來自HTTP上載的文件名。 –
非常正確,謝謝你指出。 – Mat
此外,還有很多方便的方法,如Path.GetFileName(),Path.GetFileNameWithExtensions()等 – st78