উত্তর:
ডিরেক্টরীআইএনফো.নাম দেখুন :
string dirName = new DirectoryInfo(@"c:\projects\roott\wsdlproj\devlop\beta2\text").Name;
আমি মনে করি আপনি ফাইলের পথ থেকে পিতামাতার ফোল্ডারের নাম পেতে চান। এটি পেতে সহজ। একটি উপায় হ'ল একটি FileInfoধরণের অবজেক্ট তৈরি করা এবং এর Directoryসম্পত্তিটি ব্যবহার করা ।
উদাহরণ:
FileInfo fInfo = new FileInfo("c:\projects\roott\wsdlproj\devlop\beta2\text\abc.txt");
String dirName = fInfo.Directory.Name;
এটা চেষ্টা কর
var myFolderName = @"c:\projects\roott\wsdlproj\devlop\beta2\text";
var result = Path.GetFileName(myFolderName);
@"c:\projects\roott\wsdlproj\devlop\beta2\text\"
আপনি এটি ব্যবহার করতে পারেন:
string path = @"c:\projects\roott\wsdlproj\devlop\beta2\text";
string lastDirectory = path.Split(new char[] { System.IO.Path.DirectorySeparatorChar }, StringSplitOptions.RemoveEmptyEntries).Last();
StringSplitOptions.RemoveEmptyEntriesকৌতুক করে
সহজভাবে ব্যবহার Path.GetFileName
এখানে - ফোল্ডারের পুরো পথ থেকে ফোল্ডারের নামটি বের করুন:
string folderName = Path.GetFileName(@"c:\projects\root\wsdlproj\devlop\beta2\text");//Return "text"
এখানে কিছু অতিরিক্ত দেওয়া হয়েছে - কোনও ফাইলের পুরো পথ থেকে ফোল্ডারের নাম তোলা:
string folderName = Path.GetFileName(Path.GetDirectoryName(@"c:\projects\root\wsdlproj\devlop\beta2\text\GTA.exe"));//Return "text"
আমি অনুভব করেছি যে টেক্সট.টিএসটিএসটি কোনও ডিরেক্টরি বা কেবল একটি ফাইল, তা আবিষ্কার করার জন্য ফাইল সিস্টেমে যাওয়া ছাড়া উপায় নেই। আপনি যদি কিছু সাধারণ চান, তবে আপনি কেবল ব্যবহার করতে পারেন:
s.Substring(s.LastIndexOf(@"\"));
এখানে একটি বিকল্প পদ্ধতি যা ডিরেক্টরীআইএনফো অবজেক্ট তৈরি না করেই আমার পক্ষে কাজ করেছিল। মূল বিষয়টি হ'ল সেই পথে GetFileName()কাজ করা হয় যখন পথে কোনও পিছনে স্ল্যাশ না থাকে।
var name = Path.GetFileName(path.TrimEnd(Path.DirectorySeparatorChar));
উদাহরণ:
var list = Directory.EnumerateDirectories(path, "*")
.Select(p => new
{
id = "id_" + p.GetHashCode().ToString("x"),
text = Path.GetFileName(p.TrimEnd(Path.DirectorySeparatorChar)),
icon = "fa fa-folder",
children = true
})
.Distinct()
.OrderBy(p => p.text);
এটিও এর মতো করা যেতে পারে;
var directoryName = System.IO.Path.GetFileName(@"c:\projects\roott\wsdlproj\devlop\beta2\text");
পূর্ববর্তী উত্তরের ভিত্তিতে (তবে স্থির)
using static System.IO.Path;
var dir = GetFileName(path?.TrimEnd(DirectorySeparatorChar, AltDirectorySeparatorChar));
.NET উত্সGetFileName থেকে ব্যাখ্যা :
প্রদত্ত পথের নাম এবং এক্সটেনশন অংশগুলি ফেরত দেয়। ফলস্বরূপ স্ট্রিংয়ে এমন পাথের অক্ষর রয়েছে যা শেষ ব্যাকস্ল্যাশ ("\"), স্ল্যাশ ("/"), বা পথে কোলন (":") অক্ষর অনুসরণ করে। ফলস্বরূপ স্ট্র্যাশ, স্ল্যাশ, বা কোলন অক্ষর অপসারণের পরে যদি কোনও ব্যাকস্ল্যাশ না থাকে তবে ফলাফলটি স্ট্রিংটি পুরো পথ is পথটি শূন্য হলে ফলাফলটি স্ট্রিং নাল।
Path.GetDirectoryName(@"c:\projects\roott\wsdlproj\devlop\beta2\text");
c:\projects\roott\wsdlproj\devlop\beta2, এবং ওপি এর পরে এটি ছিল না।