أخبار

 

تسجيل الدخول

أهلا, زائر. الرجاء الدخول أو التسجيل
تàهàèز 25, 2008, 11:26:13
اسم المستخدم: كلمة المرور:
تسجيل الدخول باسم المستخدم، كلمة المرور و مدة الجلسة

هل نسيت كلمة المرور؟

من على الخط

We have 3 guests and 1 member online

Syndicate

الإحصائيات

Members: 659
News: 194
Web Links: 3

مواضيع ذات صلة

آخر 10 أعضاء

ferass
nadaa
bozo2008
ayhambaker
slika
asdfgr_3
maha_shakkah
zaki_ncc
alitv
saa

إعلانات

Google
 
عالم الفيجوال بيسك دوت نت منتديات عالم الفيجوال بيسك دوت نت
جووجل
PDF Print E-mail
User Rating: / 1
PoorBest 
Written by أيوب جمال الإدريسي   
انسبت, 02 شبا× 2008
بسم الله الرحمن الرحيم


مقدمة :

سنتابع في درسنا هذا ما بدأناه حول ال LINQ And STRING و هذه المرة سوف نرى كيف يمكننا عن طريق تقنية ال LINQ أن نقوم بالبحث عن ملفات في مجلد معين تبعا لل Extension الخاصة به، يعني مثلا لو أردنا ان نقوم بعمل برنامج بحث عن الملفات سوف يكون هذا الدرس اللبنة الأولى في الطريق الى تنفيذ هذا الأمر اذا أتمنى ان يكون هذا الدرس مفيدا و لو قليلا ، فلنبدأ
بسم الله الرحمن الرحيم


مقدمة :

سنتابع في درسنا هذا ما بدأناه حول ال LINQ And STRING و هذه المرة سوف نرى كيف يمكننا عن طريق تقنية ال LINQ أن نقوم بالبحث عن ملفات في مجلد معين تبعا لل Extension الخاصة به، يعني مثلا لو أردنا ان نقوم بعمل برنامج بحث عن الملفات سوف يكون هذا الدرس اللبنة الأولى في الطريق الى تنفيذ هذا الأمر اذا أتمنى ان يكون هذا الدرس مفيدا و لو قليلا ، فلنبدأ

أحتياجات المثال :

أنشأ مشروع جديد من نوع ال Console Application
قم باستيراد فضاء الأسماء :
Imports System.LINQ
Imports System.IO


الكود :

سوف ترى أن الكود جد سهل و جد قصير لكنه مفيد regular_smile.gif
كود
Dim Directory As String = "c:\"
Dim LstFiles = My.Computer.FileSystem.GetFiles(Directory)
Dim MyQuery = From File In LstFiles _
Where File.EndsWith(".txt") _
Select File
For Each HTMLFile In MyQuery
Console.WriteLine(HTMLFile)
Next
Console.ReadKey()


شرح الكود :

أولا أنشأنا متغير من نوع STRING ووضعنا فيه مسار المجلد او DRIVE الذي نريد البحث فيه و في مثالنا البحث سيكون في القرص C

ملاحظة :
البحث لن يكون في المجلدات الفرعية بل فقط الملفات الموجود في ال DRIVE اما بخصوص البحث في المجلدات الفرعية فهناك طرق أخرى


بعد ذلك و بمساعدة ال MY الجميلة قمنا باستغلال الدالة GetFiles من أجل أخذ لائحة الملفات الموجودة في القرص و طبعا الدالة GetFiles تقوم بأخذ مسار المجلد الذي تأتي منه بلائحة الملفات.
بعد حصولنا على لائحة الملفات نقوما الآن بانشاء ال Query و هي بسيطة وجد مفهومة :
كود
Dim MyQuery = From File In LstFiles _
Where File.EndsWith(".txt") _
Select File

و بكل بساطة تقوم باختيار الملفات من لائحة الملفات تبعا للشرط وهو :

كود
Where File.EndsWith(".txt")


يعني كل ملف نهايته او بالأحرى امتداده ".txt" تقوم ال Query باختياره.
و هكذا لا يبقى لنا الا تنفيذ ال Query عن طريق ال For Each بهذه الطريقة :

كود
For Each HTMLFile In MyQuery
Console.WriteLine(HTMLFile)
Next

وعند تنفيذ الكود تظهر لنا في شاشة ال Console لائحة بجميع الملفات النصية
قد تتسائل ماذا لو اردت البحث عن ملفات بامتدادين او أكثر بمعنى اريد الحصول على جميع الملفات النصية بما فيها .doc .rtf .txt
أقول له ان الحل بسيط ما عليك الا تغيير السطر :

كود
Where File.EndsWith(".txt")


بالسطر التالي :

كود
Where File.EndsWith(".txt") Or File.EndsWith(".doc") Or File.EndsWith(".rtf")


و هكذا تحصل على مرادك

خاتمة :


رأينا في الدروس الثلاثة لحد الآن كيفية التعامل مع نصوص عادية في المرة المقبلة سوف نقوم برؤية كيفية التعامل مع ال Semi-Structured Data in Text Format يعني النصوص ذات تنظيم معين مثل ال CSV
الى ذلك الحين تقبلومني فائق التقدير
و السلام عليكم

Add as favourites (80) | Quote this article on your site | Views: 1734 | E-mail

Be first to comment this article
RSS comments

Only registered users can write comments.
Please login or register.

Powered by AkoComment Tweaked Special Edition v.1.4.6
AkoComment © Copyright 2004 by Arthur Konze - www.mamboportal.com
All right reserved

Last Updated ( انأربظاء, 11 حزêراو 2008 )
 
< Prev   Next >
Advertisement

جميع حقوق الطبع محفوطة لموقع عالم الفيجوال بيسك دوت نت


hit counter