Tôi có chuỗi có một thư mục trong các định dạng sau:Nhận nội dung sau dấu gạch chéo cuối cùng
C: // chào // thế giới
Làm thế nào tôi sẽ trích xuất tất cả mọi thứ sau khi người cuối cùng/nhân vật (thế giới)?
Tôi có chuỗi có một thư mục trong các định dạng sau:Nhận nội dung sau dấu gạch chéo cuối cùng
C: // chào // thế giới
Làm thế nào tôi sẽ trích xuất tất cả mọi thứ sau khi người cuối cùng/nhân vật (thế giới)?
string path = "C://hello//world";
int pos = path.LastIndexOf("/") + 1;
Console.WriteLine(path.Substring(pos, path.Length - pos)); // prints "world"
Phương pháp LastIndexOf
thực hiện giống như IndexOf
.. nhưng từ ngày kết thúc của chuỗi.
Tôi khuyên bạn nên xem không gian tên System.IO
vì có vẻ như bạn có thể muốn sử dụng điều đó. Có DirectoryInfo và FileInfo có thể được sử dụng ở đây, cũng có. Cụ thể DirectoryInfo's Name property
var directoryName = new DirectoryInfo(path).Name;
Có một lớp tĩnh để làm việc với Paths gọi Path
.
Bạn có thể nhận được tên đầy đủ với Path.GetFileName
.
hoặc
Bạn có thể nhận tên tệp mà không có tiện ích mở rộng với Path.GetFileNameWithoutExtension
.
using System.Linq;
var s = "C://hello//world";
var last = s.Split('/').Last();
Hãy thử điều này:
string worldWithPath = "C://hello//world";
string world = worldWithPath.Substring(worldWithPath.LastIndexOf("/") + 1);
Tôi đã nghĩ về điều đó, nhưng nhận thấy rằng các OP dường như không được tập trung vào một tập tin, nhưng một thư mục –