كيفية استخراج اسم الملف من الملف URI و إنشاء رابط على نفسه ؟

StackOverflow https://stackoverflow.com/questions/482589

  •  20-08-2019
  •  | 
  •  

سؤال

مشكلتي هي ::

من مثل سلسلة "/usr/folder1/folder2/اسم الملف.تحويلة"

  • يجب أن استخراج اسم الملف فقط من أجل العرض (اسم الملف.تحويلة فقط).
    • سيكون سؤالي كيف يجب أن أفعل ذلك ؟ تقسيم على "/" وأخذ العنصر الأخير هو طريقة واحدة ولكن لا رائحة لطيفة معي.
  • لدي لإنشاء ارتباط تشعبي الذي يستخدم URI من الملف الوجهة.أن يكون شيئا من هذا القبيل إلى file://domain.com/usr/folder1/folder2/اسم الملف.تحويلة

نظرت يوري URL واجهات في java.net ولكن لا يمكن أن تجد أي شيء مفيد هناك.

أيضا في بعض الحالات ، مسار الملف يمكن أن يكون فاصلة الفضاء إلخ (ويندوز المجلدات).لذا الحفاظ على ذلك في الاعتبار عند إعطاء أي أفكار.

هل كانت مفيدة؟

المحلول

قد تتمكن من محاولة شيء من هذا القبيل:

File file = new File("/usr/folder1/folder2/filename.ext");
System.out.println(file.getName());

لم أكن متأكدا ما إذا كان هذا سوف تعمل إذا كان الملف غير موجود ، ولكن حاولت فقط ويبدو أن العمل موافق.

نصائح أخرى

CommonsIO توفر حلول لهذه المشكلة: FilenameUtils.getName(), يعود اسم الملف + ملحق.

String filename = FilenameUtils.getName("/usr/folder1/folder2/filename.ext");
System.out.println(filename); // Returns "filename.ext"

يجب أن ننظر إلى الملف الدرجة.وخاصة getName() الأسلوب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top