আমি যখন NSString
সাথে /Users/user/Projects/thefile.ext
থাকি তখন আমি thefile
উদ্দেশ্য-সি পদ্ধতিতে নিষ্কাশন করতে চাই ।
এটি করার সহজতম উপায় কী?
আমি যখন NSString
সাথে /Users/user/Projects/thefile.ext
থাকি তখন আমি thefile
উদ্দেশ্য-সি পদ্ধতিতে নিষ্কাশন করতে চাই ।
এটি করার সহজতম উপায় কী?
উত্তর:
এনএসএসটিং রেফারেন্স থেকে নেওয়া , আপনি এটি ব্যবহার করতে পারেন:
NSString *theFileName = [[string lastPathComponent] stringByDeletingPathExtension];
lastPathComponent
কল ফিরে আসবে thefile.ext
, এবং stringByDeletingPathExtension
শেষ থেকে এক্সটেনশন প্রত্যয় মুছে ফেলা হবে।
lastPathComponent
। ধন্যবাদ!
[[[NSFileManager defaultManager] displayNameAtPath:path] stringByDeletingPathExtension]
(আপনি যা চান ফাইল ম্যানেজারটি ব্যবহার করুন)। এটি নিশ্চিত করে যে ফাইলের নামটি সঠিকভাবে স্থানীয় করা হয়েছে এবং এক্সটেনশনটি সরানো হয়েছে।
NSString *myExtension = [myString pathExtension]
আপনি যদি কোনও ব্যবহারকারী-পঠনযোগ্য ফাইলের নাম প্রদর্শন করছেন তবে আপনি ব্যবহার করতে চান নাlastPathComponent
। পরিবর্তে, এনএসফিলম্যানেজারের displayNameAtPath:
পদ্ধতিতে পুরো পথটি পাস করুন । এটি মূলত একই জিনিসটি করে, কেবল এটি ফাইলের নামটি সঠিকভাবে স্থানীয় করে এবং ব্যবহারকারীর পছন্দের উপর ভিত্তি করে এক্সটেনশনটি সরিয়ে দেয়।
বছরের পর বছর দেরি করা এবং বিষয় ছাড়ার ঝুঁকিতে - এবং @ মার্কের দুর্দান্ত অন্তর্দৃষ্টি সত্ত্বেও, সুইফ্টে এটি দেখতে মনে হচ্ছে:
let basename = NSURL(string: "path/to/file.ext")?.URLByDeletingPathExtension?.lastPathComponent