簡體   English   中英

字符串操作-獲取最后的'x'個字符

[英]String Manipulation - Get the last 'x' amount of chars

我正在使用ASP.NET/C# 3.5為Web構建Windows資源管理器應用程序。 我有一個動態字符串,可以保存我的路徑信息。 在瀏覽應用程序時,此字符串會更改。 我想做的是獲取字符串中的最后一個“目錄名稱”,例如:

C:\Code\AppSettings

我需要返回AppSettings

如果字符串是:

C:\Code\AppSettings\Backup

然后,我需要返回Backup

我對字符串操作不足夠了解,無法從動態字符串正確獲取此信息。 任何幫助或例子將是巨大的。

謝謝!

由於您要處理文件/目錄路徑,因此最好使用Path類的幫助器方法,而不要使用字符串操作。

您可以使用Path.GetFileName方法

var result = Path.GetFileName(@"C:\Code\AppSettings");
// result == "AppSettings"

看一下Path類 在您的情況下, Path.GetFileName將起作用。 除非有反斜杠。 然后,您需要先刪除該結尾的反斜杠。

或者,您可以按照其他人的建議使用SubstringString.Split 但是,請注意,您必須考慮到尾隨反斜杠的可能性,否則可能會給其他選擇帶來麻煩。

通過尾部反斜杠,我的意思是像C:\\Code\\AppSettings\\這樣的字符串。

Path.GetFileName(@"C:\Code\AppSettings\Backup")

導致Backup

System.IO.Path應該用於文件或目錄路徑操作-它提供了許多其他有用的方法。

最好使用Path類來處理這種事情。

但是,如果要通過字符串處理來嘗試,請嘗試

string myResult = myString.SubString (myString.LastIndexOf ( "\\") + 1 );

我認為應該這樣做:

exampleString = "C:\Code\AppSettings\Backup"  
string[] words = exampleString.Split('\\');

根據'\\\\'標記字符串,即將'\\'符號處的字符串分割為包含C:的數組C: Code AppSettings Backup

然后,您只需要使用words列表中的最后一個元素即可。

我以前從未使用過Path ,但是我想知道它是否能滿足您的要求,因為字符串的最后一部分可能是目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM