الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اريد Parser لمسارملفات

مغلق
بدأه darekman في 27 يونيو 2005 · 2 رد · 535 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أخواني الاعزاء

اعمل في مشروع يقوم بجلب مجموعة من المسارات Paths و المطلوب تقطيعها و وضعها داخل List View بحيث يكون الامر كالتالي :

نفترض ان المسار الاول : C:\ My Work \ My Project \ FileAAA.doc

المسار الثاني :C:\ My Work \ My Project \ FileBBB.doc

المسار الثالث: C:\ My Work \ My Project \ New Folder \ work.exe

المطلوب كيف اقوم بعملية تقطيع المسار بحيث احدد المجلدات الفرعية داخل المجلد الاصلي و الملفات , علما بان هذه المسارات لا تخص الملفات الموجودة في القرص الصلب و انما هي مرسلة على شكل string من برنامج آخر.....

اقرب مثال للمطلوب هو My Computer

#2

السلام عليكم ورحمة الله وبركاته

أخي العزيز أنا لم أفهم تقريبا ما تريد عمله ولكن

يمكنك إستخدام الأمر Split فهو يتم تقطيع String على حساب حرف تقوم بتحديدة مثلا '\'

فإذا كان إسم String مثلا Path

Path.Split('\');

وهو يقوم بإسترجاع مصفوفة من Strings مرتبة

فيمكنم إستخدام هذه المصفوفة في أي شئ تريدة

بارك الله فيك

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#3

السلام عليكم ورحمة الله وبركاته.

بالفعل استخدامك لـ Split يمكن أن يفي بالغرض لكن ليس في أغلب الأحيان , وسيواجهك صعوبات وتحديات كثيره أنت في غنى عنها خصوصا لو كان مسار الملف الذي يتم ارساله موجود داخل أكثر من مجلد فرعي.

أعتقد أن الحل الأمثل هو استخدام الـ System.IO.FileInfo و الـ System.IO.DirectoryInfo فقد صمما خصيصا من أجل هذه الأشياء.

الـ FileInfo Class Constructor يتقبل منك string وهذا هو المطلوب تماما.

//متنساش using System.IO
FileInfo myFileInfo = new FileInfo(@"C:\My Work\My Project\FileAAA.doc");

بعد ذلك يمكنك استخدام بعض الـ Methods والـ Properties الرائعه التي يقدمها هذا الكلاس مثل Name و FullName و Extension , وذلك لمعرفة بعض المعلومات عن الملف نفسه.

استخدم Directory لوضع الـ Directory الموجود به الملف ... في DirectoryInfo Class لمعرفة كل الأشياء التي تتعلق بالـ Directory الموجود به الملف.

FileInfo myFileInfo = new FileInfo(@"C:\\My Project\FileAAA.doc");
DirectoryInfo myDirectoryInfo = new DirectoryInfo(myFileInfo.Directory.ToString());

بعد ذلك يمكنك الاستفاده من الـ Methods والـ Properties الموجوده داخل الـ DirectoryInfo Class مثل ::

GetDirectories التي تسترجع مصفوفه من نوع DirectoryInfo تحتوي على المجلدات الموجوده , وهذه المجلدات يمكن أن تقوم بعمل لها أيضا GetDirectories لتعرف المجلدات الموجوده في كل مجلد ... وهكذا حتى تصل الى الـ Root.

GetFiles التي تسترجع مصفوفه من نوع FileInfo بكل الملفات الموجوده في الـ Directory.

يمكنك التفكير قليلا في عمل Loop بسيط بهذه الأشياء , ينجزلك مشروعك كله :).

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

هذا الموضوع مغلق.

مواضيع مشابهة